void node::priorordertraverse(){ cout << this->index << " " << this->date << endl; if (this->plchild != NULL) this->plchild->priorordertraverse(); if (this->prchild != NULL) this->prchild->priorordertraverse();}如上图;按上面的代码不是到4时就结束递归了吗;但是程序运行时他就能遍历出正确的顺序;4是怎么到5的;以及输出5后又是怎么到6的;求大神解决啊!!!!
1 回答
已采纳
Caballarii
TA贡献1123条经验 获得超629个赞
在3的上面的时候,this->plchild->priorordertraverse();执行了4,this->prchild->priorordertraverse();执行了5。
同理,在2上面的时候,this->plchild->priorordertraverse();执行了3,this->prchild->priorordertraverse();执行了6
- 1 回答
- 0 关注
- 1154 浏览
添加回答
举报
0/150
提交
取消