[leetcode]Binary Tree Inorder Traversal
生活随笔
收集整理的這篇文章主要介紹了
[leetcode]Binary Tree Inorder Traversal
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
二叉樹的中序遍歷非遞歸版本,采用的是wiki百科上的辦法。果然簡潔,而且和先序有異曲同工之妙,先序只用push右節(jié)點,中序只用push中節(jié)點。除此之外還有個更改TreeNode加一個visited的bool值的辦法就不表了。http://discuss.leetcode.com/questions/23/binary-tree-inorder-traversal?這個鏈接里面有個長長的討論。后序遍歷據(jù)說比較難,就先不學了,哪個面試官會這么變態(tài)出后序遍歷么!!無堆棧版本的遍歷也先不學了,有空多寫先序和中序,要記熟了。
寫的時候仍然要看圖,不要光背,思路是:
1.當前節(jié)點一直是要處理的節(jié)點;
2.不停向左子樹方向走,并push本節(jié)點;
3.走不下去了(null),就從棧中取剛才那個節(jié)點,打印,并變當前節(jié)點為右節(jié)點。
轉(zhuǎn)載于:https://www.cnblogs.com/lautsie/p/3261119.html
總結(jié)
以上是生活随笔為你收集整理的[leetcode]Binary Tree Inorder Traversal的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: NSMutableArray利用for循
- 下一篇: 谨慎全面地对待“滞销”