python多叉树层遍历
时间: 2023-10-22 11:07:03 浏览: 96
基于Python的多叉树遍历算法.zip
5星 · 资源好评率100%
以下是 Python 多叉树层次遍历的示例代码:
```python
class TreeNode:
def __init__(self, value):
self.value = value
self.children = []
def level_order_traversal(root):
if not root:
return []
result = []
queue = [root]
while queue:
level = []
level_size = len(queue)
for i in range(level_size):
node = queue.pop(0)
level.append(node.value)
for child in node.children:
queue.append(child)
result.append(level)
return result
```
以上代码中,`TreeNode` 类表示多叉树的节点,每个节点有一个值和多个子节点。`level_order_traversal` 函数接受根节点作为参数,返回一个列表,其中包含各层节点的值。
该函数使用队列进行层次遍历。首先将根节点加入队列。每次从队列中取出当前层的所有节点,将它们的值添加到一个列表中,并将它们的子节点加入队列中。直到队列为空时,所有层次的节点都被遍历完毕。
阅读全文