我觉得现在这考试, 明显就是在考数学, 看看这道题.
基本上就是说满/完全二叉树的层次和序号的关系.
假设第m个节点在k层.
那么在k层,第一个节点是 2^(k-1)(从1开始,如果从0开始就是2^(k-1)-1), 最后一个元素是 2^(k-1) + (2^(k-1)-1),
也就是说2^(k-1)号 ~ 2^(k-1)+ (2^(k-1)-1) 号节点都在同一层上.
而最后一个节点 2^(k-1)+ (2^(k-1)-1) =2^k-1 的编码其实就是这颗树的节点总数,
==>2^(k-1)号 ~ 2^k-1在同一层
设m=2^(k-1) ==> k=log_2_m+1
设n=2^k-1 ===> k=log_2_(n+1)
所以只能蒙一下了. ⌊ 这个符号是取整的意思. ⌊5/3⌋=1,再比如⌊10/4⌋=2
看一下某x的答案, 感觉关键点没有说到. 还有一段表述写错了, 少了一个括号.