![]() |
1
2
下面是对算法稍加修改的版本的实现。 不同之处在于,我们并不是一个级别接着一个级别进行清除,而是一次完成所有操作。这使用了这样一个事实,即孩子总是在他们父母的右边,因此,如果我们只需浏览一次列表,并标记要删除的所有内容,我们就不会遗漏任何内容。
这会使树处于非规范状态,因为被删除的节点仍然存在,它们只是被标记为要删除(通过将其父节点设置为
因此,我还添加了一个选项压缩步骤,删除这些节点并对其余节点重新编号,以便将其余节点编号为0、1、2、。。。没有间隙。
演示:
|
![]() |
Toniq · javascript为php保存多维数组 1 年前 |
|
Jannis · Java中数组的怪异行为 1 年前 |
|
callum · 如何识别数组中与给定序列不匹配的元素? 1 年前 |
![]() |
tenfour · 如何使用数组元素的索引初始化数组元素 2 年前 |
![]() |
Guillaume · 使用操作从Python列表创建numpy数组 2 年前 |
![]() |
maxMas · Swift 5:为什么会出现索引超出范围错误? 2 年前 |