12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- from typing import Optional
- 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: Optional[TreeNode]):
- if root == None:
- return []
- left = self.inorderTraversal(root.left)
- right = self.inorderTraversal(root.right)
- return left + [root.val] + right
-
- def preorderTraversal(self, root: Optional[TreeNode]):
- if root == None:
- return []
- left = self.preorderTraversal(root.left)
- right = self.preorderTraversal(root.right)
- return [root.val] + left + right
-
- def postorderTraversal(self, root: Optional[TreeNode]):
- if root == None:
- return []
- left = self.postorderTraversal(root.left)
- right = self.postorderTraversal(root.right)
- return left + right + [root.val]
|