diff --git "a/problems/344円272円214円345円217円211円346円240円221円347円232円204円351円200円222円345円275円222円351円201円215円345円216円206円.md" "b/problems/344円272円214円345円217円211円346円240円221円347円232円204円351円200円222円345円275円222円351円201円215円345円216円206円.md" index edd55aad3c..4621d4a739 100644 --- "a/problems/344円272円214円345円217円211円346円240円221円347円232円204円351円200円222円345円275円222円351円201円215円345円216円206円.md" +++ "b/problems/344円272円214円345円217円211円346円240円221円347円232円204円351円200円222円345円275円222円351円201円215円345円216円206円.md" @@ -180,26 +180,34 @@ class Solution { class Solution: def preorderTraversal(self, root: TreeNode) -> List[int]: - if not root: - return [] - - left = self.preorderTraversal(root.left) - right = self.preorderTraversal(root.right) - - return [root.val] + left + right + res = [] + + def dfs(node): + if node is None: + return + + res.append(node.val) + dfs(node.left) + dfs(node.right) + + return res ``` ```python # 中序遍历-递归-LC94_二叉树的中序遍历 class Solution: def inorderTraversal(self, root: TreeNode) -> List[int]: - if root is None: - return [] - - left = self.inorderTraversal(root.left) - right = self.inorderTraversal(root.right) - - return left + [root.val] + right + res = [] + + def dfs(node): + if node is None: + return + + dfs(node.left) + res.append(node.val) + dfs(node.right) + + return res ``` ```python @@ -207,13 +215,17 @@ class Solution: # 后序遍历-递归-LC145_二叉树的后序遍历 class Solution: def postorderTraversal(self, root: TreeNode) -> List[int]: - if not root: - return [] - - left = self.postorderTraversal(root.left) - right = self.postorderTraversal(root.right) - - return left + right + [root.val] + res = [] + + def dfs(node): + if node is None: + return + + dfs(node.left) + dfs(node.right) + res.append(node.val) + + return res ``` ### Go: