树(Tree)表示通过边连接的节点,它是一种非线性数据结构,它具有以下属性。
无涯教程将一个节点指定为根节点,然后添加更多节点作为子节点,下面是创建根节点的程序。
只创建一个Node类,并向该节点添加一个赋值。这变成只有根节点的树。
class Node: def __init__(self, data): self.left=None self.right=None self.data=data def PrintTree(self): print(self.data) root=Node(10) root.PrintTree()
10为了插入到树中,使用与上面创建的相同的节点类,并向其中添加一个插入节点,插入类比较值将该节点添加到父节点,并决定将其添加为左节点还是右节点。最后,PrintTree类用于打印树。
class Node: def __init__(self, data): self.left=None self.right=None self.data=data def insert(self, data): # 将新值与父节点进行比较 if self.data: if data < self.data: if self.left is None: self.left=Node(data) else: self.left.insert(data) elif data > self.data: if self.right is None: self.right=Node(data) else: self.right.insert(data) else: self.data=data # 打印树 def PrintTree(self): if self.left: self.left.PrintTree() print( self.data), if self.right: self.right.PrintTree() # 使用insert方法添加节点 root=Node(12) root.insert(6) root.insert(14) root.insert(3) root.PrintTree()
3 6 12 14
祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)