94. Binary Tree Inorder Traversal
DFS inorder
,没想到iteratively
写起来还挺麻烦,需要先遍历到底再开始记录值。recursively
就没啥区别了,可以看Q144的preorder
对比。
# Definition for a binary tree node.
# class TreeNode:
# def __init__(self, val=0, left=None, right=None):
# self.val = val
# self.left = left
# self.right = right
class Solution:
def inorderTraversal(self, root: TreeNode) -> List[int]:
if not root: return []
stack = collections.deque([])
res = []
cur = root
while stack or cur:
while cur:
stack.append(cur)
cur = cur.left
cur = stack.pop()
res.append(cur.val)
cur = cur.right
return res
Last updated
Was this helpful?