32/100. Binary Tree Inorder Traversal
生活随笔
收集整理的這篇文章主要介紹了
32/100. Binary Tree Inorder Traversal
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
中序遍歷二叉樹。
遞歸法:
# Definition for a binary tree node. # class TreeNode(object): # def __init__(self, x): # self.val = x # self.left = None # self.right = Noneclass Solution(object):def __init__(self):self.res = []def inorderTraversal(self, root):""":type root: TreeNode:rtype: List[int]"""if not root:return []self.inorderTraversal(root.left)self.res.append(root.val)self.inorderTraversal(root.right)return self.res迭代法:
# Definition for a binary tree node. # class TreeNode(object): # def __init__(self, x): # self.val = x # self.left = None # self.right = Noneclass Solution(object):def inorderTraversal(self, root):""":type root: TreeNode:rtype: List[int]"""if not root:return []pNode = rootstack = []res = []while pNode or stack:while pNode: #①迭代,直到找到最左的葉節點;②非空右節點stack.append(pNode)pNode = pNode.left#pNode為空pNode = stack.pop()res.append(pNode.val)pNode = pNode.rightreturn res總結
以上是生活随笔為你收集整理的32/100. Binary Tree Inorder Traversal的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: matplotlib - 3D scat
- 下一篇: 33/100. Product of A