给定一个数据结构class node 打印出一个有缩进的树型结构
时间: 2023-10-12 18:03:07 浏览: 185
打印树结构
可以通过递归的方式打印出一个有缩进的树型结构。
首先,我们需要定义一个节点类class Node,该类包含一个value属性代表节点的值,以及一个children属性用于存储节点的子节点列表。
接下来,我们可以定义一个递归函数print_tree,该函数用于打印树型结构。函数通过传入一个节点和一个缩进层级来递归打印节点及其子节点的值。
具体实现如下:
```python
class Node:
def __init__(self, value):
self.value = value
self.children = []
def print_tree(node, indent_level=0):
indent = ' ' * indent_level * 4
print(indent + str(node.value))
for child in node.children:
print_tree(child, indent_level+1)
# 测试用例
root = Node("A")
b = Node("B")
c = Node("C")
d = Node("D")
e = Node("E")
f = Node("F")
root.children.append(b)
root.children.append(c)
b.children.append(d)
b.children.append(e)
c.children.append(f)
print_tree(root)
```
运行以上代码,会输出以下的树型结构:
```
A
B
D
E
C
F
```
阅读全文