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

时间:2026-01-19

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文档下载到电脑

精彩图片

热门精选

大家正在看

× 游客快捷下载通道(下载后可以自由复制和排版)

限时特价:4.9 元/份 原价:20元

支付方式:

开通VIP包月会员 特价:19元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219