输出二叉树中从每个叶子结点到根结点的路径。


输出二叉树中从每个叶子结点到根结点的路径。

正确答案:void A.lPath(BTNode *b,ElemType path[],int pathlen) {int i; if (b!=NULL) {if (b->lchild==NULL &;&; b->rchild==NULL) //*b为叶子结点 {cout << " " << b->data << "到根结点路径:" << b->data; for (i=pathlen-1;i>=0;i--) cout << endl; } else {path[pathlen]=b->data; //将当前结点放入路径中 pathlen++; //路径长度增1 A.lPath(b->lchild,path,pathlen); //递归扫描左子树 A.lPath(b->rchild,path,pathlen); //递归扫描右子树 pathlen--; //恢复环境 } }// if (b!=NULL) }//算法结束


Tag:数据结构 结点 子树 时间:2024-01-19 16:04:28

相关答案

热门答案