一种二叉树遍历方法
来源:互联网 发布:贤者时间 知乎 编辑:程序博客网 时间:2024/06/14 22:50
伪代码如下:
INORDER-TREE-WALK(x)y = xprint x.keyx = x.leftwhile y != NILy = y.rightwhile y != xwhile x != NILprint x.keyx = x.leftwhile x.right == NILx = x.px = x.rightprint y.key
基本思路:
如上图所示,节点的遍历顺序为:a-b-d-b-e-b-a-c-f-g-i-g-j-g-f-h
可以知道:n0的遍历次数为1,n1的遍历次数为2,n2的遍历次数为3(其中n0为度为0的节点,n1为度为1的节点,n2为度为2的节点)。
因此该方法的遍历次数为:A = n0 + 2 * n1 + 3 * n2(1)
我们知道:n0 = n2 + 1(2)
结合公式1和2我们可以得到:A = 4 * n2 + 2 * n1 + 1
所以当n2值越小是,这个遍历方法的效率越高
阅读全文
0 0
- 一种二叉树遍历方法
- 二叉树遍历方法
- 二叉树遍历方法
- acm hnu 10415 分硬币的一种解法(递归遍历二叉树的方法,超时)
- 二叉树的几种遍历的方法(后序遍历的另外一种递归实现还需要思考)
- 二叉树的遍历方法
- 二叉树遍历方法小结
- 二叉树的遍历方法
- 二叉树遍历方法总结
- Morris方法遍历二叉树
- Robson方法遍历二叉树
- Morris方法遍历二叉树
- 二叉树的遍历方法
- 二叉树的遍历方法
- 二叉树的遍历方法
- 数据结构--二叉树遍历方法
- 一种二叉树层序遍历实现
- 一种二叉树的建立和遍历实现
- 算法1-1:统计数字问题
- JS数组去重
- PHP xdebug_debug_zval debug_zval_dump 使用
- oninput、onchange与onpropertychange事件的用法和区别
- 使用jQuery做网页定位导航特效(下)
- 一种二叉树遍历方法
- 2017 ACM-ICPC (西安赛区) C-Sum
- Online Judge
- Uboot代码学习实践验证之Linux下烧uboot
- cs/bs区别
- Unity ios 清掉推送缓存问题
- Akka入门手册
- 第6章 堆排序
- 有关JAVA中collection和set和list的用法,以及元素的升序排序方法