1.Binary Tree Inorder Traversal(94)
经典题:二叉树中序遍历。
常见掌握方法包含递归和非递归方法。
顺序为:左子树,节点,右子树
递归代码:https://pastebin.com/NWMswfgN
重点还是在非递归算法上,我们通过手写栈来代替递归栈,减少函数调用的时间,顺着算法思路,我们还是需要一直先往左子树走,手写栈依次保存节点(左子树优先于节点),然后当左子树为空了,可以到栈里退出最前点(当前子树最左下的点),将此点输出,并将指针移到此点的右子树,进行下一轮循环。
非递归代码:https://pastebin.com/pkSvKVLr
tree
最后编辑于 :
?著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事?!?“怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 二叉查找树(Binary Sort Tree) 我们之前所学到的列表,栈等都是一种线性的数据结构,今天我们将学习计...
- 问题描述 94Given a binary tree, return the inorder traversal ...