中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

Python TreeNode類如何實現二叉樹

小樊
81
2024-08-17 16:18:35
欄目: 編程語言

以下是一個示例實現Python中二叉樹的TreeNode類:

class TreeNode:
    def __init__(self, value):
        self.value = value
        self.left = None
        self.right = None

    def insert_left(self, value):
        if self.left is None:
            self.left = TreeNode(value)
        else:
            new_node = TreeNode(value)
            new_node.left = self.left
            self.left = new_node

    def insert_right(self, value):
        if self.right is None:
            self.right = TreeNode(value)
        else:
            new_node = TreeNode(value)
            new_node.right = self.right
            self.right = new_node

# 創建一個二叉樹
root = TreeNode(1)
root.insert_left(2)
root.insert_right(3)
root.left.insert_left(4)
root.left.insert_right(5)
root.right.insert_left(6)
root.right.insert_right(7)

# 遍歷二叉樹
def inorder_traversal(node):
    if node:
        inorder_traversal(node.left)
        print(node.value)
        inorder_traversal(node.right)

inorder_traversal(root)

在上面的示例中,我們定義了一個TreeNode類,其中包含節點的值以及左子節點和右子節點。我們還實現了insert_left()和insert_right()方法來插入左子節點和右子節點。最后,我們創建了一個二叉樹,并通過inorder_traversal()函數來進行中序遍歷。

0
民丰县| 云和县| 义马市| 常熟市| 那坡县| 绵阳市| 章丘市| 进贤县| 专栏| 麻栗坡县| 宾阳县| 方正县| 定兴县| 云浮市| 临漳县| 河源市| 正定县| 丰顺县| 镇康县| 静安区| 阿克苏市| 调兵山市| 津市市| 华阴市| 东乡族自治县| 醴陵市| 彰化县| 南皮县| 江西省| 常熟市| 滦平县| 三台县| 微山县| 大厂| 郑州市| 万载县| 福海县| 青海省| 建始县| 贵德县| 东至县|