二叉树的遍历(非递归)
来源:互联网 发布:淘宝客服工资有6000吗 编辑:程序博客网 时间:2024/05/16 14:58
二叉树的先序遍历
void preorder(Btree *root){Btree *p=root;stack<Btree*>s;while(p!=NULL||!s.empty()){while(p!=NULL){cout<<p->data<<" ";s.push(p);p=p->lchild;}if(!s.empty()){p=s.top();s.pop();p=p->rchild;}}}
二叉树的中序遍历
void inorder(Btree *root){Btree *p=root;stack<Btree*>s;while(p!=NULL||!s.empty()){while(p!=NULL){p=p->lchild;s.push(p);}if(!s.empty()){p=s.top();cout<<p->data<<" ";s.pop();p=p->rchild;}}}
二叉树的后序遍历
void postorder(Btree *root){Btree *p=root,*r=NULL,temp;stack<Btree*>s;while(p!=NULL||!s.empty()){if(p!=NULL){s.push(p);p=p->lchild;}else{p=s.top();if(p->rchild&&p->rchild!=r){p=p->rchild;s.push(p);p=p->lchild;}else{p=s.top();s.pop();cout<<p->data;r=p;p=NULL;}}}}
0 0
- 二叉树的遍历(递归+非递归+层次遍历)
- 二叉树的遍历(非递归)
- 二叉树的遍历(非递归)
- 二叉树的遍历(非递归)
- 二叉树的递归,非递归遍历
- 二叉树的递归+非递归遍历
- 二叉树的递归非递归遍历
- 二叉树的遍历--递归+非递归
- 二叉树的递归、非递归遍历
- 二叉树的递归非递归遍历
- 二叉树遍历(递归,非递归)
- 二叉树的遍历(递归实现+非递归实现)
- 二叉树的三种遍历(递归+非递归)
- 二叉树的遍历(递归与非递归)
- 二叉树的遍历(递归 and 非递归)
- 二叉树的遍历(递归、非递归)
- 二叉树的遍历(递归、非递归) java
- 二叉树的遍历(递归+非递归)
- hallway vs corridor
- Java 7之基础 - 实现比较
- sql中的group by 和 having 用法解析
- eclipse双击变量高亮显示开关
- Linux 指令篇:档案目录管理--ls
- 二叉树的遍历(非递归)
- 内连接与外连接的区别
- KiFastSystemCall函数问题
- shell入门
- spring集成mybatis事务问题
- 如何隐藏你写的ABAP代码
- Oracle Cursor详解与实例
- IOS文件存储小结
- 遇到问题为什么应该自己动手(刘未鹏)