自学内容网 自学内容网

LeetCode 94.二叉树的中序遍历 Python题解

二叉树的中序遍历

# coding=utf-8
# Creator:Mr.Zhao

# 二叉树的中序遍历
"""
给定一个二叉树的根节点root ,返回它的中序遍历。
"""


# 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: TreeNode):
        WHITE, GRAY = 0, 1
        res = []
        stack = [(WHITE, root)]
        while stack:
            color, node = stack.pop()
            if node is None: continue
            if color == WHITE:
                stack.append((WHITE, node.right))
                stack.append((GRAY, node))
                stack.append((WHITE, node.left))
            else:
                res.append(node.val)
        return res


"""
本质上比较简单就不说了
"""


原文地址:https://blog.csdn.net/weixin_45450206/article/details/142717084

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!