# 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: Optional[TreeNode]) -> List[int]:
#创建一个空数组
inorder =[]
def help( root):
nonlocal inorder
# 1. 基线条件:如果当前节点为空,直接返回,什么也不做
if root is None:
return
# 2. 递归遍历左子树
help(root.left)
# 3. 处理(访问)根节点:将根节点的值添加到结果列表中
# 这一步在中序遍历中位于左右子树递归之间
inorder.append(root.val)
# 4. 递归遍历右子树
help(root.right)
return
help(root)
return inorder