二叉树的层序遍历

来源:互联网 发布:java飞机大战跟踪弹 编辑:程序博客网 时间:2024/05/21 01:51
void LevelOrderTraverse(BiTree T,Status(*Visit)(TElemType)){    /* 采用二叉链表存储结构,Visit是对数据元素操作的应用函数。*/    /* 层序遍历二叉树T算法(利用队列),对每个数据元素调用函数Visit */    SqQueue q;    QElemType p;    if(T)    {        InitQueue(&q);        EnQueue(&q,T);        while(!QueueEmpty(q))        {            DeQueue(&q,&p);            Visit(p->data);            if(p->lchild!=NULL) EnQueue(&q,p->lchild);            if(p->rchild!=NULL) EnQueue(&q,p->rchild);        }        printf("/n");    }}

原创粉丝点击