!!!树的中序,前序线索化遍历
2016-06-26 21:16
239 查看
=====
笔记另写:
======
code:
=== 前序线索化
笔记另写:
======
code:
class A{ public: ///inorderMorrisTraversal void inorderMorrisTraversal(TreeNode *root){ TreeNode *curr = root; TreeNode *prev = nullptr; while(curr!=nullptr){ if(curr->left == nullptr){ cout<<curr->val<<" "; curr = curr->right; }else{ ///search predecessor prev = curr->left; while(prev->right !=nullptr && prev->right!=curr){ prev = prev->right; } if(prev->right==nullptr){ prev->right = curr; curr = curr->left; }else{ prev->right = nullptr;///recover the tree cout<<curr->val<<" "; curr = curr->right; } }///if-else }///while } };
=== 前序线索化
/// void preMorris(TreeNode* root){ TreeNode *curr = root; TreeNode *prev = nullptr; while(curr!=nullptr){ if(curr->left==nullptr){ cout<<curr->val<<" "; curr = curr->right; }else{ prev = curr->left; while(prev->right!=nullptr && prev->right!=curr){ prev = prev->right; } if(prev->right==nullptr){ prev->right = curr; cout<<curr->val<<" "; curr = curr->left; }else{ prev->right = curr; curr = curr->right; } } }///while }
相关文章推荐
- union和union all的区别
- 网络流
- UISegmentedControl
- C++中的重载,重写, 重定义 差别
- OpenCV中的HOG+SVM物体分类
- 数据流中的中位数
- 【BZOJ-1391】order 最小割 + 最大全闭合图
- 详细,Qt Creator快捷键大全,附快捷键配置方法
- 我叫感受
- 常见的PHP安全漏洞-跨站、注入和文件包含
- 95. Unique Binary Search Trees II
- BZOJ1068: [SCOI2007]压缩
- 进程管理
- GoodView 点赞
- BZOJ1055: [HAOI2008]玩具取名
- 6.2 Python构造C数据类型
- 在Oozie 中调度执行shell、hive 脚本,以及通过shell脚本执行hive/sqoop/shell脚本的方法
- Java设计模式之策略模式
- PDO预处理语句PDOStatement对象
- 结合P2P软件使用Ansible分发大文件