码迷,mamicode.com
首页 >  
搜索关键字:左右子树    ( 865个结果
打印二叉树的深度
这道题本质上还是考查二元树的遍历 如果一棵树只有一个结点,它的深度为1。如果根结点只有左子树而没有右子树,那么树的深度应该是其左子树的深度加1;同样如果根结点只有右子树而没有左子树,那么树的深度应该是其右子树的深度加1。如果既有右子树又有左子树呢?那该树的深度就是其左、右子树深度的较大值再加1。 上面的这个思路用递归的方法很容易实现,只需要对遍历的代码稍作修改即可 参考资料:...
分类:其他好文   时间:2014-08-02 10:03:03    阅读次数:184
二叉树镜像
题目描述: 输入一个二叉树,输出其镜像。 九度OJ的测试很蛋疼啊~ 这里,我先写一个求二叉树镜像的代码,使用自己的测试代码: 思路很简单:先判断是否左右孩子都为空,如果不是,则交换,然后递归左右子树。其实是先序遍历。 /* 二叉树镜像 by Rowandjj 2014/8/1 */ #include using namespace std; typedef str...
分类:其他好文   时间:2014-08-01 19:47:22    阅读次数:266
#查找算法#【2】二叉排序树
二叉排序数或者是一棵空树,或者是一棵具有以下性质的二叉树:(1)若它有左子树,则左子树上所有结点的数据均小于根结点的数据。(2)若它有右子树,则右子树上所有结点的数据均大于根结点的数据。(3)左、右子树本身又各是一棵二叉排序树。这样,在查找的时候,从根节点开始,若查找的元素小于根节点则查找其左子树,...
分类:其他好文   时间:2014-07-22 23:29:37    阅读次数:367
STL源码剖析 容器 stl_tree.h
RB-tree(红黑树) -------------------------------------------------------------------------- 平衡二叉搜索树 --> 平衡可提高搜索效率 常见的平衡二叉搜索树有: AVL-tree(任何节点的左右子树高度相差最多 1)、红黑树、AA-tree AVL-tree 破坏平衡的情况及恢复平衡的方法 恢复时要先找到失去平衡的点 外侧插入 --> 单旋转 内侧插入 --> 双旋转 图5-10 图5-11 图5-12 红黑树是...
分类:其他好文   时间:2014-07-22 22:34:33    阅读次数:316
平衡二叉树
平衡二叉树(Balanced binary tree)是由阿德尔森-维尔斯和兰迪斯(Adelson-Velskii and Landis)于1962年首先提出的,所以又称为AVL树。 定义:平衡二叉树或为空树,或为如下性质的二叉排序树:   (1)左右子树深度之差的绝对值不超过1;   (2)左右子树仍然为平衡二叉树.       平衡因子BF=左子树深度-右子树深度....
分类:其他好文   时间:2014-07-22 00:08:33    阅读次数:257
用递归方式遍历二叉树
问题 用递归方式遍历二叉树 思路说明 遍历二叉树的方法有广度优先和深度优先两类,下面阐述的是深度优先。 以下图的二叉树为例: 先定义三个符号标记: 访问结点本身(N)遍历该结点的左子树(L)遍历该结点的右子树(R) 有四种方式: 前序遍历(PreorderTraversal,NLR):先访问根结点,然后遍历其左右子树中序遍历(InorderT...
分类:其他好文   时间:2014-07-14 14:06:12    阅读次数:217
判断二叉树是否平衡
题目:输入一棵二叉树的根结点,判断该树是不是平衡二叉树。如果某二叉树中任意结点的左右子树的深度相差不超过1,那么它就是一棵平衡二叉树。 注:这里不考虑该二叉树是否是二叉排序树 解决要点: 1.后序遍历二叉树; 2.递归。 核心算法: bool isBalanced(pTree pT,int *depth) { if(!pT)//参数判断 { *d...
分类:其他好文   时间:2014-07-13 18:58:22    阅读次数:239
求二叉树深度
概念: 1.二叉树深度:树中结点的最大层次称为树的深度或高度。 2.二叉树层次:从根开始定义起,根为第一层,根的孩子为第二层,以此类推。 要点: 1.递归。 2.二叉树深度为左右子树深度较大值+1。 代码: /* 求二叉树深度 by Rowandjj 2014/7/13 ------------------------------- 题目描述: 输入一...
分类:其他好文   时间:2014-07-13 18:15:34    阅读次数:347
二叉排序树(BST)
二叉排序树: 二叉排序树(Binary Sort Tree)又称二叉查找树(Binary Search Tree),亦称二叉搜索树。 它或者是一棵空树;或者是具有下列性质的二叉树: (1)若左子树不空,则左子树上所有结点的值均小于它的根结点的值; (2)若右子树不空,则右子树上所有结点的值均大于它的根结点的值; (3)左、右子树也分别为二叉排序树; 注:中序遍历一棵二叉排序...
分类:其他好文   时间:2014-07-12 19:35:08    阅读次数:249
二叉排序树
1.二叉排序树的概念:二叉排序树是一种动态树表。 二叉排序树的定义:二叉排序树或者是一棵空树, 或者是一棵具有例如以下性质的二叉树: ⑴ 若它的左子树非空,则左子树上全部结点的值均小于根结点的值; ⑵ 若它的右子树非空,则右子树上全部结点的值均大于根结点的值; ⑶ 左、右子树本身又各是一棵二叉排序树...
分类:其他好文   时间:2014-07-11 11:26:27    阅读次数:159
865条   上一页 1 ... 80 81 82 83 84 ... 87 下一页
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!