这个是常见的对二叉树的操作。总结一下:设节点的数据结构,如下:1 class TreeNode {2 char val;3 TreeNode left = null;4 TreeNode right = null;5 6 TreeNode(char _val) {7 ...
分类:
编程语言 时间:
2014-10-20 14:50:57
阅读次数:
181
二叉树的遍历:
前序遍历:根节点->左子树->右子树
中序遍历:左子树->根节点->右子树
后序遍历:左子树->右子树->根节点
求下面树的三种遍历:
前序遍历:abdefgc
中序遍历:debgfac
后序遍历:edgfbca
详细的二叉树的操作可以看一下我之前写的文章
二叉树java
已知前序、中序遍历,求后...
分类:
其他好文 时间:
2014-09-09 12:56:38
阅读次数:
489
遍历二叉树
二叉树是一种非线性的数据结构。所谓的遍历二叉树就是按某种顺序访问二叉树中的每个节点,要求每个节点被访问一次且仅一次。
遍历操作实际上是将非线性结构线性化过程,其结果为线性序列。
二叉树的操作
(1)先序遍历---结束的条件是二叉树是否为空 TLR
先访问根节点;
再先序访问左子树;
再先序访问右子树。
(2)中序遍历---结束的条件是二叉树是否为...
分类:
其他好文 时间:
2014-08-29 18:24:18
阅读次数:
154
注意:
1 判断一个节点是否平衡的方法
2 平衡一个节点的方法 :
我这里比原文改进一点,独立出一个平衡节点的函数balanceNode(),这样一个函数可以用来平衡插入和删除操作,使得代码更加简洁了。
这样修改之后就使得平衡二叉树好像和一般二叉树的操作比较,就是多了一个平衡操作。
3 删除操作情况很多,很困难,一定要理清思路。十分容易出bug的地方。
这里是查找后继节点的值,填补上到...
分类:
其他好文 时间:
2014-06-05 05:16:45
阅读次数:
261