• 一道二叉树题目---顺序存储二叉树位置同层的关系


    我觉得现在这考试, 明显就是在考数学, 看看这道题.

    基本上就是说满/完全二叉树的层次和序号的关系.

    假设第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的答案, 感觉关键点没有说到. 还有一段表述写错了, 少了一个括号.

  • 相关阅读:
    第九周PSP
    c++的继承方式
    matlab的应用
    beta发布的评论
    本周psp
    历年作品点评
    JSON解析数据
    每周工作量及代码统计(第七周)
    词频统计(WEB)版
    评论alpha发布
  • 原文地址:https://www.cnblogs.com/tekikesyo/p/10788822.html
Copyright © 2020-2023  润新知