lc094.二叉树的中序遍历

 

题目链接

遍历二叉树,一般来说有三种解法,一是最简单的递归解法,二是迭代解法,三是莫里斯遍历。

//to be updated

这个算法的时间复杂度是O(N),空间复杂度是O(N)。

class Solution:

    def inorderTraversal1(self, root: TreeNode) -> List[int]:
        self.res = []
        self.dfs(root)
        return self.res

    def dfs(self, root):
        if not root:
            return
        self.dfs(root.left)
        self.res.append(root.val)
        self.dfs(root.right)