线索化中序、先序、后序遍历二叉树的方式(待补充完整)
2015-09-16 20:31
316 查看
线索化遍历优点在于不需要递归和栈,空间复杂度降到O(1),且时间复杂度仍未O(n)。
期间会暂时修改树的数据结构,遍历结束后恢复。
线索化中序遍历二叉树
期间会暂时修改树的数据结构,遍历结束后恢复。
线索化中序遍历二叉树
public void morrisTraversal(TreeNode root){ TreeNode temp = null; while(root!=null){ if(root.left!=null){ // connect threading for root temp = root.left; while(temp.right!=null && temp.right != root) temp = temp.right; // the threading already exists if(temp.right!=null){ temp.right = null; System.out.println(root.val); root = root.right; }else{ // construct the threading temp.right = root; root = root.left; } }else{ System.out.println(root.val); root = root.right; } } }
相关文章推荐
- 高并发模式之reactor原型代码
- 成员变量与局部变量的区别
- Swift与OC转换
- opencv configure
- 挂载,卸载,读,关
- 虚函数表指针、虚基类表指针
- linux之nm命令
- 【js】javascript变量声明优先级
- Java,JSP,JavaScript三和差异
- codeforces 577
- UIView 总复习
- 设计模式 工厂模式
- @ 小浩
- 猫猫学iOS 之微博项目实战(10)微博cell中图片的显示以及各种填充模式简介
- Java库使用----xstream1.3.1
- android学习:android Activity生命周期的七个方法测试
- 如何撰写商业计划书(精简)
- socket编程原理
- WebService之Axis2系列教程Axis2与Spring集成发布
- USACO Section 1.4 More Search Technique