二叉树的层次遍历,绝对正确
Status LevelOrderTraverse(bintree T,Status visit(TElemType e)) { LinkQueue Q; bintree p; InitQueue(Q); //初始化队列Q,用于保存当前结点左右孩子 if (T == NULL) return ERROR; p = T; visit(p->data); // 访问根节点 if (p->lchild) EnQueue(Q, p->lchild); // 若存在左孩子,左孩子进队列 if (p->rchild) EnQueue(Q, p->rchild); // 若存在右孩子,右孩子进队列 while (!QueueEmpty(Q))
用户评论