数据结构课程设计之-树与二叉树的转换(6)

时间:2026-01-20   来源:未知    
字号:

if(!s.empty()) {

p=s.top(); s.pop(); p=p->rchild; } } }

5.后序遍历树的递归算法 void inoeder(BTNode *T) {

if(T!=NULL) {

inoeder(T->firstchild); printf("%d ",T->data); inoeder(T->rightsib); } }

6后序遍历树的非递归算法

void postOrder2(BinTree *root) //非递归后序遍历 {

stack<BTNode*> s; BinTree *p=root; BTNode *temp;

while(p!=NULL||!s.empty()) {

while(p!=NULL) //沿左子树一直往下搜索,直至出现没有左子树的结点 {

BTNode *btn=(BTNode *)malloc(sizeof(BTNode)); btn->btnode=p; btn->isFirst=true; s.push(btn); p=p->lchild; }

if(!s.empty()) {

temp=s.top(); s.pop();

if(temp->isFirst==true) //表示是第一次出现在栈顶 {

temp->isFirst=false; s.push(temp);

p=temp->btnode->rchild;

数据结构课程设计之-树与二叉树的转换(6).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:19 元/月 原价:99元
低至 0.1 元/份 每月下载300
全站内容免费自由复制
VIP包月下载
特价:19 元/月 原价:99元
低至 0.1 元/份 每月下载300
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)