二叉树的4种遍历方式
1、前序遍历
def printTree(self, t: TreeNode):if t is not None:print(t.val, ' ')self.printTree(t.left)self.printTree(t.right)
2、中序遍历
def printTree(self, t: TreeNode):if t is not None:self.printTree(t.left)print(t.val, ' ')self.printTree(t.right)
3、后续遍历
def printTree(self, t: TreeNode):if t is not None:self.printTree(t.left)self.printTree(t.right)print(t.val, ' ')
4、层次遍历
def levelOrder(root: TreeNode) -> list:if root is None:return []res= []queue = [root]while queue:temp = []res_t = []for node in queue:res_t.append(node.val)if node.left:temp.append(node.left)if node.right:temp.append(node.right)queue = tempres.append(res_t)return res
