二叉树的中序遍历
程序员文章站
2022-06-17 20:00:35
...
题目:
思路:
利用栈做迭代:
先遍历所有节点,直到找到最左节点,将这个节点的父节点抛出,加入栈,再遍历右子树.
代码:
class Solution:
def inorderTraversal(self, root: TreeNode) -> List[int]:
ans,res=[],[]
while ans or root:
if root:
ans.append(root)
root=root.left
else:
root=ans.pop()
res.append(root.val)
root=root.right
return res