返回信息流详情可见 《数据结构与问题求解(Java语言版)(第四版)》
552页
就不懂为什么不用循环呢
书上解释说 第17行出栈 “该节点就变成当前结点”???
我理解 17行比如弹出一个当前根节点
那么19行判断有左孩子 我压进栈了
然后21行有右孩子 我也压进栈了
没有再出栈的活动了啊~ 怎么继续呢。。。
[upload=1][/upload]
这是一条镜像帖。来源:北邮人论坛 / java / #49952同步于 2016/5/3
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖
【已解决】树的前序遍历代码有点没懂~求指点
Ykxpb
2016/5/3镜像同步18 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
就是在做题的时候发现树的东西不太了解 于是看了看数据结构~然后就卡在这里了
然后大家不都说求职面试什么的 数据结构和算法很重要么 我看数据结构这里就是各种实现啊
就比如栈是怎么实现的 通过数组怎么实现栈 通过链表怎么实现栈 。。。
不用看么 还是我看的方式不对。。。
【 在 nuanyangyang 的大作中提到: 】
: 哪有这么麻烦……先写递归的程序吧,然后再手动用栈来做。
恩恩 本来他是写了一个树的迭代器
然后继承 重写的first() 还有 advance()方法
我就advance() 这里卡住了
【 在 dongqing 的大作中提到: 】
: 这应该只是一部分程序
顺序不对。
树的遍历是很高级的概念。首先应该用高级的语言描述。递归调用比手动用栈更高级。如果先用递归写成功(如果语言选取正确,比如haskell,那么树的遍历只需要两行代码),会大大提高对遍历算法的理解。然后再手动用栈实现也可以。手动用栈不一定比递归更好,要看情况。
【 在 Ykxpb 的大作中提到: 】
: 就是在做题的时候发现树的东西不太了解 于是看了看数据结构~然后就卡在这里了
: 然后大家不都说求职面试什么的 数据结构和算法很重要么 我看数据结构这里就是各种实现啊
: 就比如栈是怎么实现的 通过数组怎么实现栈 通过链表怎么实现栈 。。。
: ...................
。。。除了大学学的c 只懂一点java
那我肿么破。。。。
所以说还是先搞定怎么用???然后再回来看数据结构 这样的顺序..
觉得算法比较难么。。。所以都没咋看算法。。看来还是要去看算法??。
【ps 嘿嘿 先膜下传说中的暖神~】
【 在 nuanyangyang 的大作中提到: 】
: 顺序不对。
: 树的遍历是很高级的概念。首先应该用高级的语言描述。递归调用比手动用栈更高级。如果先用递归写成功(如果语言选取正确,比如haskell,那么树的遍历只需要两行代码),会大大提高对遍历算法的理解。然后再手动用栈实现也可以。手动用栈不一定比递归更好,要看情况。