题目
请按照以下步骤,构建一个二叉树,并返回它的根节点。
开始时,建立一个值为-1的根节点。这是第0层。
根据操作列表operations,逐一添加节点。列表中的每个操作[height, index]表示:
height:节点所在层
index:节点在该层的位置(从0开始)
添加规则如下:
如果目标节点没有左子节点,添加一个新的子节点到左边。
如果目标节点有左子节点但没有右子节点,添加一个新的子节点到右边。
如果目标节点已经有左右子节点,就不添加。
注意点:
输入保证操作中的节点始终存在。
最后的输出是一个按层次遍历的节点值列表,可能包含null来表示空节点。
示例:
输入:
[[0, 0], [0, 0], [1, 1], [1, 0], [0, 0]]
输出:
[-1, 0, 1, 3, null, 2]
代码
class TreeNode:
def __init__(se
这篇博客介绍了如何根据给定的操作列表构建二叉树。题目要求从-1值的根节点开始,根据操作列表中指定的层数和位置添加节点。添加规则基于现有子节点的存在情况。文章提供了一个示例输入和输出,输出是层次遍历的节点值列表,可能包含null表示空节点。
订阅专栏 解锁全文
345

被折叠的 条评论
为什么被折叠?



