1. 二叉树的遍历:先序(递归、非递归),中序(递归、非递归),后序(递归、非递归)。 2. 获取二叉树节点个数: 3. 判断二叉树是否为完全二叉树: 4. 求二叉树两个节点的最小公共祖先: 5. 二叉树的翻转: 6. 求二叉树第k层的节点个数: 7. 求二叉树中节点的最大距离(相距最远的两个节点之 ...
分类:
编程语言 时间:
2018-08-28 17:57:22
阅读次数:
179
二叉树:每个结点至多有两个子树 满二叉树:每一层的结点个数都是最大结点数 完全二叉树:叶子节点在最后两层;对于任一结点,左子树的深度比右子树深度大1或者相等 性质: 二叉树:第i层,至多有2^(i-1)个结点 二叉树:深度为k的二叉树,至多有(2^k)-1个结点 满二叉树:深度为k的满二叉树的结点个 ...
分类:
其他好文 时间:
2018-08-27 23:17:05
阅读次数:
200
堆(优先队列)priority queue特殊的队列,取出元素的顺序是依照元素的优先权(关键字)大小,而出元素进入队列的先后顺序操作:查找最大值(最小值),删除(最大值) 数组:链表:有序数组:有序链表: 采用二叉搜索树? NO 采用完全二叉树 YES堆的连个特性结构性:用数组表示的完全二叉树:有序 ...
分类:
其他好文 时间:
2018-08-24 00:36:36
阅读次数:
528
1、分为逻辑结构、物理结构和数据操作。 2、逻辑结构 集合:成员之间没有关系 线性(元素之间都是一对一的关系):链表、数组 非线性(元素之间存在多对多的关系):树、图、散列表 3、物理结构 顺序 链式 索引 散列 4、二叉树 满二叉树:节点个数为2的n次方-1,即除最后一行,都有2个子节点。 完全二 ...
分类:
其他好文 时间:
2018-08-22 21:54:20
阅读次数:
182
思路:通过树的层序遍历进行判断。结点入队时,当出现一个结点的孩子结点为空时,则之后就不能有新的结点入队。 若没有,则是完全二叉树,否则不是完全二叉树。 层序遍历代码: ...
分类:
其他好文 时间:
2018-08-20 19:44:55
阅读次数:
158
一、二叉树介绍点这片文章 二叉树及题目介绍 例题: 有一颗满二叉树,每个节点是一个开关,初始全是关闭的,小球从顶点落下, 小球每次经过开关就会把它的状态置反,这个开关为关时,小球左跑,为开时右跑。现在问第k个球下落到d层时的开关编号。输入深度d和小球个数k 思路分析:首先该题最先想到的是模拟,开一个 ...
分类:
编程语言 时间:
2018-08-18 10:26:16
阅读次数:
168
一、二叉树常用性质 1. 在二叉树的第n层上最多有2 n 1个节点 。(n =1) 2. 二叉树中如果深度为d(有k层),那么最多有2d 1个节点。(d =1) 3. 二叉树按照从上到下从左到右依次编号,则若某节点编号为k,则其左右子树根节点编号分别为2k和2k+1; 4. 二叉树分类:满二叉树,完 ...
分类:
其他好文 时间:
2018-08-16 19:34:56
阅读次数:
145
二叉树的定义:二叉树是每个结点最多有两个子树的树结构。性质:1、在二叉树的第i层上至多有2^i-1个结点。(i>=1) 2、深度为k的二叉树至多有(2^k)-1个结点。(k>=1) 3、具有n个结点的完全二叉树的深度为(log2n)+1。 &
分类:
其他好文 时间:
2018-08-13 16:58:53
阅读次数:
138
2018-08-09 16:01:40 一、Populating Next Right Pointers in Each Node 问题描述: 问题求解: 由于是满二叉树,所以很好填充。 二、Populating Next Right Pointers in Each Node II 问题描述: 问 ...
分类:
其他好文 时间:
2018-08-09 19:34:40
阅读次数:
112
文字描述 1 二叉树的顺序存储 用一组地址连续的存储单元自上而下,自左至右存储完全二叉树上的结点元素。 这种顺序存储只适用于完全二叉树。因为,在最坏情况下,一个深度为k且只有k个结点的单支树却需要长度为2k-1的一维数组。 2 二叉树的链式存储(二叉链表): 链表中的结点至少包含3个域:数据域,左指 ...
分类:
其他好文 时间:
2018-08-07 20:28:39
阅读次数:
181