二叉树先序、中序、后序三种遍历的非递归算法,此三个算法可视为标准算法.doc

二叉树先序、中序、后序三种遍历的非递归算法,此三个算法可视为标准算法.doc

ID:56951056

大小:42.01 KB

页数:26页

时间:2020-07-28

二叉树先序、中序、后序三种遍历的非递归算法,此三个算法可视为标准算法.doc_第1页
二叉树先序、中序、后序三种遍历的非递归算法,此三个算法可视为标准算法.doc_第2页
二叉树先序、中序、后序三种遍历的非递归算法,此三个算法可视为标准算法.doc_第3页
二叉树先序、中序、后序三种遍历的非递归算法,此三个算法可视为标准算法.doc_第4页
二叉树先序、中序、后序三种遍历的非递归算法,此三个算法可视为标准算法.doc_第5页
资源描述:

《二叉树先序、中序、后序三种遍历的非递归算法,此三个算法可视为标准算法.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、本贴给出二叉树先序、中序、后序三种遍历的非递归算法,此三个算法可视为标准算法。1.先序遍历非递归算法#definemaxsize100typedefstruct{  BitreeElem[maxsize];  inttop;}SqStack;voidPreOrderUnrec(Bitreet){  SqStacks;  StackInit(s);  p=t;    while(p!=null

2、

3、!StackEmpty(s))  {      while(p!=null)        //遍历左子树      {        visi

4、te(p->data);        push(s,p);        p=p->lchild;          }//endwhile            if(!StackEmpty(s))      //通过下一次循环中的内嵌while实现右子树遍历      {        p=pop(s);        p=p->rchild;            }//endif            }//endwhile  }//PreOrderUnrec2.中序遍历非递归算法#definemaxsize100typede

5、fstruct{  BitreeElem[maxsize];  inttop;}SqStack;voidInOrderUnrec(Bitreet){  SqStacks;  StackInit(s);  p=t;  while(p!=null

6、

7、!StackEmpty(s))  {      while(p!=null)        //遍历左子树      {        push(s,p);        p=p->lchild;      }//endwhile            if(!StackEmpty(s))   

8、   {        p=pop(s);        visite(p->data);      //访问根结点        p=p->rchild;        //通过下一次循环实现右子树遍历      }//endif      }//endwhile}//InOrderUnrec3.后序遍历非递归算法#definemaxsize100typedefenum{L,R}tagtype;typedefstruct{  Bitreeptr;  tagtypetag;}stacknode;typedefstruct{  stack

9、nodeElem[maxsize];  inttop;}SqStack;voidPostOrderUnrec(Bitreet){  SqStacks;  stacknodex;  StackInit(s);  p=t;    do  {      while(p!=null)      //遍历左子树      {        x.ptr=p;        x.tag=L;      //标记为左子树        push(s,x);        p=p->lchild;      }        while(!StackEm

10、pty(s)&&s.Elem[s.top].tag==R)        {        x=pop(s);        p=x.ptr;        visite(p->data);  //tag为R,表示右子树访问完毕,故访问根结点          }            if(!StackEmpty(s))      {        s.Elem[s.top].tag=R;    //遍历右子树        p=s.Elem[s.top].ptr->rchild;            }    }while(!St

11、ackEmpty(s));}//PostOrderUnrec---------------------------------------------------------------范文最新推荐------------------------------------------------------电力安全月工作总结[电力安全月工作总结]电力安全月工作总结2011年3月1日至3月31日为我公司的安全生产月,**变电站围绕;夯实基储提高素质、树立标杆、争创一流;的主题,开展了丰富多彩、形式多样的具体行动:通过看板形式宣传安全第一、预

12、防为主的方针;通过48+4的学习机会,进行安全生产大讨论;通过安全活动进行查找本站的隐患的活动,电力安全月工作总结。形成了;人人学会安全,层层尽责保证安全;的良好氛围,使我站的安全生产工作又上了一个新的台阶

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。