当前位置:首页python > 正文

树节点结构示例(Tree Node)

作者:野牛程序员:2025-12-22 11:45:02python阅读 2106
树节点结构示例(Tree Node)
# /*
# 树节点结构示例(Tree Node)
# --------------------------------------------------------
# 概念:
# 树(Tree)是一种非线性结构,由若干“节点 Node”组成。
# 每个节点包含:
#   1) 数据(value)
#   2) 若干子节点(children)
#
# 常见场景:
# - 文件目录结构
# - 组织结构图
# - 游戏 AI 决策树
# - 前缀树、二叉树等多种树结构
#
# 以下示例实现一个通用树节点,可添加子节点并层级打印。
# */

# 树节点定义
class TreeNode:
    def __init__(self, value):
        self.value = value
        self.children = []   # 存放子节点

    # 添加子节点
    def add_child(self, node):
        self.children.append(node)

    # 打印树结构(递归)
    def display(self, level=0):
        print("  " * level + str(self.value))
        for child in self.children:
            child.display(level + 1)


# --------------------------------------------------------
# 构建示例树结构
root = TreeNode("Root")

child_a = TreeNode("A")
child_b = TreeNode("B")
child_c = TreeNode("C")

root.add_child(child_a)
root.add_child(child_b)
root.add_child(child_c)

child_a.add_child(TreeNode("A1"))
child_a.add_child(TreeNode("A2"))

child_b.add_child(TreeNode("B1"))

child_c.add_child(TreeNode("C1"))
child_c.add_child(TreeNode("C2"))


# 打印树结构
print("树结构:")
root.display()

# --------------------------------------------------------
# 要点总结:
# 1) 树节点包含 value 与 children 列表;
# 2) 每个节点可拥有 0~N 个子节点;
# 3) 结构层级清晰,适合表现上下级关系;
# 4) 递归遍历是树结构最常见的处理方式;
# 5) 可在此基础上扩展为二叉树、前缀树、多路树等;
# 6) 树适合用于层次结构数据的表达与搜索。
# */


# 树结构:
# Root
#   A
#     A1
#     A2
#   B
#     B1
#   C
#     C1
#     C2


野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
  • 树节点结构示例(Tree Node)
  • 相关推荐

    最新推荐

    热门点击