二叉树

作者: 明白已晚 | 来源:发表于2017-02-26 23:18 被阅读18次

非线性结构:树和图
树:是一种递归定义的递归结构,重要的非线性结构。
深度:树中结点最大层次的值。(结点最多的那一层层)
结点:树中的元素及若干指向其子树的分支。
结点度:一个结点拥有的子树数目。(本身结点)。
满二叉树:除最后一层无任何子节点外,每一层上的所有结点都有两个子结点二叉树。
对于任意二叉树,如果n0、n1、n2分别表示度数为0,1,2的结点树,则有n0=n2+1(不理解,求解答?)

满二叉树
总结点个数 2^k -1 (k为深度,若为3,则结果为7)

完全二叉树:除最后最后一层外,每一层上的节点数均达到最大值,在最后一层上只缺少右边的若干结点
是效率很高的结构,堆就是这种结构

完全二叉树

非完全二叉树图为下:

非完全二叉树.jpg

二叉树的储存方式:顺序结构、链式结构

二叉树遍历:(以满二叉树图为例)

1.先序遍历:先遍历根节点,再遍历左子树,再遍历右子树(1245367)
2.中序遍历:先遍历左子树,再遍历根节点,再遍历右子树(4251637)
3.后续遍历:先遍历左子树,再遍历右子树,再遍历根节点(4526731)

线索二叉树:(解决二叉树遍历时困难的问题)

二叉树的遍历本质上是将一个复杂的非线性结构转换为线性结构,使每个结点都有了唯一前驱和后继(第一个结点无前驱,最后一个结点无后继)。
对于二叉树的一个结点,查找其左右子女是方便的,其前驱后继只有在遍历中得到。为了容易找到前驱和后继,有两种方法。
一是在结点结构中增加向前和向后的指针fwd和bkd,这种方法增加了存储开销,不可取;
二是利用二叉树的空链指针。

线索二叉树应用明天继续。

相关文章

  • 数据结构与算法-二叉树02

    二叉树的定义 二叉树的特点 二叉树的五中基本形态 其他二叉树 斜二叉树 满二叉树 完全二叉树图片.png满二叉树一...

  • 二叉树

    二叉树 高度 深度真二叉树 满二叉树 完全二叉树 二叉树遍历前序 中序 后序层序遍历 翻转二叉树 递归法...

  • 二叉树 基础操作

    二叉树的使用 二叉树结构 先序创建二叉树 DFS 先序遍历二叉树 中序遍历二叉树 后序遍历二叉树 BFS 层次遍历...

  • 树与二叉树

    **树 ** 二叉树 满二叉树 完全二叉树 三种遍历方法 树与二叉树的区别 二叉查找树 平衡二叉树 红黑二叉树

  • 二叉树的宽度优先搜索(层次遍历,BFS)

    二叉树结构: 二叉树宽度优先搜索: 按照二叉树的层数依次从左到右访问二叉树的节点;例如:给定一个二叉树: 按照宽度...

  • 剑指 offer:39、平衡二叉树

    39. 平衡二叉树 题目描述 输入一棵二叉树,判断该二叉树是否是平衡二叉树。 解题思路: 平衡二叉树:Wiki:在...

  • Algorithm小白入门 -- 二叉树

    二叉树二叉树构造二叉树寻找重复子树 1. 二叉树 基本二叉树节点如下: 很多经典算法,比如回溯、动态规划、分治算法...

  • 14-树&二叉树&真二叉树&满二叉树

    一、树 二、二叉树 三、真二叉树 四、满二叉树

  • 二叉树的应用

    完美二叉树(满二叉树) 除了最下一层的节点外,每层节点都有两个子节点的二叉树为满二叉树 完全二叉树 除二叉树最后一...

  • 12.树Tree(2)

    目录:1.二叉树的基本概念2.二叉树的性质3.二叉树的创建4.二叉树的遍历 1.二叉树的基本概念 2.二叉树的性质...

网友评论

      本文标题:二叉树

      本文链接:https://www.haomeiwen.com/subject/uazowttx.html