// 计算当前节点在哪一层 let n = Math.floor(Math.sqrt(i + 1))
来源:11-2 对称二叉树-代码实操

静听雨逝
2019-06-19
我发现这个等式只适用于4层以内的二叉树,然后我改成这样
let n = 1
for (let i = 0, len = data.length; i < len; i++) {
let node = new Node(data[i])
// 因为每层第一个节点必然是 2 的 n 次方,所以通过比较i的值,来递增 n
if ((i + 1) >= 2 ** (i + 1)) {
n += 1
}
写回答
1回答
-
快乐动起来呀
2019-06-19
同学我决定你理解的不对,这个公式不是只针对4层以下的,以上的也可以的
022019-07-30
相似问题