线段树的数组大小下限及证明

手动博客搬家: 本文发表于20170820 20:23:52, 原地址https://blog.csdn.net/suncongbo/article/details/77432667

线段树是一种将一个区间分成若干个子区间的数据结构。它是一棵二叉树,且满足点i的子节点编号分别为2i和2i+1 (叶子节点除外).
因此,在已知区间[1, n]的情况下,我们需要知道其最大的节点编号。
首先由线段树的性质可以证明线段树的深度不会超过\(ceil(\log_2 n)\)即\(floor(\log_2 n)+1\),由此可以得到节点的最大编号不会超过\[\sum_{i=0}^n 2^{floor(\log_2 n)+1}=2^{floor(\log_2 n)+2}-1=2^{floor(\log_2 n)}\times4-1\le2^{\log_2 n}\times4-1=4n-1\]
即:线段树的数组下限为4*n-1.

发表于 2018-12-26 22:38 suncongbo 阅读(...) 评论(...) 编辑 收藏

刷新评论刷新页面返回顶部

线段树的数组大小下限及证明相关推荐

  1. 【学习笔记】线段树的数组大小下限及证明

    手动博客搬家: 本文发表于20170820 20:23:52, 原地址https://blog.csdn.net/suncongbo/article/details/77432667 线段树是一种将一 ...

  2. 线段树分裂与合并的模板以及空间大小的计算

    学习知识来自AGOH的B站视频 银酱对线段树合并空间大小的计算 模板题 #include <bits/stdc++.h>using namespace std; typedef long ...

  3. poj 2352 Stars 线段树(先建后查/边建边查)/树状数组三种方法思路详解,带你深入了解线段树难度⭐⭐⭐★

    poj 2352 Stars 目录 poj 2352 Stars 1.树状数组 2.线段树,先建树后查找 3.线段树,边建树边查找 Description Astronomers often exam ...

  4. 线段树开4N空间证明

    线段树采用数组储存时,无疑,其储存空间利用与其左右子树定义有关 方式一: 左子树:[l,l+r2][l,\frac{ l+r}{2}] 右子树:[l+r2+1,r][\frac{ l+r}{2}+1, ...

  5. BZOJ.2212.[POI2011]Tree Rotations(线段树合并)

    题目链接 \(Description\) 给定一棵n个叶子的二叉树,每个叶节点有权值(1<=ai<=n).可以任意的交换两棵子树.问最后顺序遍历树得到的叶子权值序列中,最少的逆序对数是多少 ...

  6. l2-004 这是二叉搜索树吗? (25分)_什么是 “线段树” ?

    线段树是一个复杂的数据结构,比较难理解,也比较难解释清楚.在我将这个数据结构反复学习了五遍的时候,我终于有了信心写出这篇介绍线段树的文章.希望大家能够掌握这种数据结构. 这篇文章比较长,建议大家耐心阅 ...

  7. 2020-2021年度第二届全国大学生算法设计与编程挑战赛 (春季赛)- 天才的操作(线段树+主席树+树上倍增)

    题目链接:点击查看 题目分析:刚看到这个题目的时候,口胡了一个假算法,觉得对于每次询问的操作 [l,r][l,r][l,r] ,只需要找到指令集区间 [l,r][l,r][l,r] 内覆盖到点 kkk ...

  8. POJ3264——Balanced Lineup(线段树)

    本文出自:http://blog.csdn.net/svitter 题意:在1~200,000个数中.取一段区间.然后在区间中找出最大的数和最小的数字.求这两个数字的差. 分析:按区间取值,非常明显使 ...

  9. 小学六年级学生写的 “线段树”解析,厉害了!

    作者 | 王乙堃 来源 | 程序员小灰 线段树是一个复杂的数据结构,比较难理解,也比较难解释清楚.在我将这个数据结构反复学习了五遍的时候,我终于有了信心写出这篇介绍线段树的文章.希望大家能够掌握这种数 ...

最新文章

  1. Linux系统文件安全与权限
  2. 三十四、段页式管理方式
  3. 在《我的世界》里搭建神经网络,运行过程清晰可见,这位印度小哥开发的新玩法火了...
  4. RxSwift处理Error事件
  5. 查看python安装路径-Mac查看Python安装路径和版本
  6. python和javascript哪个好_JavaScript与Python:主要区别
  7. php mysql 绑定变量,在MYSQL中,怎么用PDO绑定变量的方式插入数据?
  8. 关于 error: LNK1123: failure during conversion to COFF: file invalid or corrupt 错误的解决方案【Qt】【 VS2010】
  9. HDU-1754 线段树的节点更新,储存区间的最大值
  10. python flask api部署_使用flask开发api——部署flask,使用gunicorn+gevent模式的http server...
  11. pip太慢豆瓣下载地址
  12. centos7 yum安装zabbix监控
  13. 代码传奇 张一鸣的成长之路
  14. 爱创课堂每日一题第二十三天- Expires和Cache-Control?
  15. 带你玩转Spring Cloud Tencent(一)概述
  16. 斐波那契数列的四种实现方式(C语言)
  17. SNIPER: Efficient Multi-Scale Training
  18. 【科普】Xilinx 3D IC技术简介
  19. K455L安装Ubuntu18.04历程
  20. php设计模式:单例模式

热门文章

  1. Js提交表单的两种方法
  2. Delphi中TFlowPanel实现滚动条效果
  3. C++编程中的头文件包含问题
  4. 不使用sprintf函数使用共用体进行STM32单片机通讯解析
  5. 【CyberSecurityLearning 64】SSRF
  6. BUUCTF-Reverse:reverse3
  7. ubuntu常见指令
  8. 【ES6专栏】全面解析ECMAScript 6模块系统
  9. Photoshop画笔的混合算法实现(逆推)
  10. java中继承、多接口实现