先序遍历非递归算法

时间:2024-10-10 06:01:20 资料大全 我要投稿
  • 相关推荐

先序遍历非递归算法

先序遍历非递归算法

#define maxsize 100
typedef struct
{
    Bitree Elem[maxsize];
    int top;
}SqStack;

void PreOrderUnrec(Bitree t)
{
    SqStack s;
    StackInit(s);
    p=t;
    while (p!=null || !StackEmpty(s))
    {
        while (p!=null)            //遍历左子树
        {
            visite(p->data);
            push(s,p);
            p=p->lchild;     
        }//endwhile
       
        if (!StackEmpty(s))        //通过下一次循环中的内嵌while实现右子树遍历
        {
            p=pop(s);
            p=p->rchild;      
        }//endif           
    }//endwhile   
}//PreOrderUnrec

 

【先序遍历非递归算法】相关文章:

递归实现回文判断09-27

程序员递归面试问题及解析09-09

人生感悟:先做小事,先赚小钱10-10

让能力先飞06-10

百学须先立志07-19

想成功就先放低自己09-28

JAVA经典算法面试10题及答案05-21

除夕算不算法定假日09-21

兰亭集序说课稿07-11

格言警句解析:非俭无以养廉,非廉无以养德09-20