中序线索化二叉树
来源:互联网 发布:前瞻数据库怎么样 编辑:程序博客网 时间:2024/06/10 05:36
一个很精妙的想法,把节点的左右孩子空指针利用起来,省去了遍历时栈的占用。
明白点就是,如果一个结点他的左右孩子非空,那么ltag,rtag就是0.否则就是1,表示这是一个线索。
下面是主要的代码:
- public void inThread(Node root){
- if(root != null){
- inThread(root.getLeft()) ;//线索化左孩子
- if(null == root.getLeft()){//左孩子为空
- root.setLeftIsThread(true) ;//将左孩子设置为线索
- root.setLeft(pre) ;
- }
- if(pre!=null&&null == pre.getRight()){//右孩子为空
- pre.setRightIsThread(true) ;
- pre.setRight(root) ;
- }
- pre = root ;
- inThread(root.getRight()) ;//线索化右孩子
- }
- }
0 0
- (原创)中序线索化二叉树
- 中序线索化二叉树
- 中序线索化 二叉树
- 中序线索化二叉树
- 实现中序线索化二叉树
- 中序线索化二叉树
- 中序线索化二叉树
- 中序线索化二叉树
- 中序线索化二叉树
- 中序线索化二叉树
- 中序线索化二叉树
- 中序线索化二叉树
- 二叉树的中序线索化
- 线索化二叉树(中序)
- 中序线索化二叉树
- 中序线索化二叉树
- 中序线索化二叉树以及中序遍历线索化二叉树、倒中序遍历线索化二叉树
- 中序线索二叉树
- java 处理 XML
- svn add后的文件取消add操作
- 中断和异常的处理
- hunnu10522(判断两条线段的交点个数)
- 共享池之十:模拟ORA-4031错误
- 中序线索化二叉树
- SSH框架的applicationContext.xml详解(非Annotation)
- VMware Server Home Page 不能打开登录界面问题
- 题目1459:Prime ring problem
- 如何写一个Linux精灵进程
- 实体类与数据库表的映射文件
- cocos2d V2 转 V3
- 花生壳测试经验
- 进程——线程——纤程