层序生成二叉树的主函数
时间: 2023-11-14 16:13:46 浏览: 82
二叉树基本操作(层序遍历、树形输出)
4星 · 用户满意度95%
下面是一个层序生成二叉树的主函数示例:
```python
class TreeNode:
def __init__(self, val=0, left=None, right=None):
self.val = val
self.left = left
self.right = right
def levelOrderBuild(values):
"""
:param values: list[int or None]
:return: TreeNode
"""
if not values:
return None
root = TreeNode(values[0])
queue = [root]
i = 1
while i < len(values):
node = queue.pop(0)
if values[i] is not None:
node.left = TreeNode(values[i])
queue.append(node.left)
i += 1
if i < len(values) and values[i] is not None:
node.right = TreeNode(values[i])
queue.append(node.right)
i += 1
return root
```
这个函数的作用是根据给定的列表生成一个二叉树,其中列表中的每个元素代表二叉树中对应节点的值,如果是`None`则表示这个节点为空。函数会按照层序遍历的顺序生成二叉树。
阅读全文