




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
树状数组,原数组是a,c是a的树状数组,可以发现这些规律C1=a1C2=a1+a2C3=a3C4=a1+a2+a3+a4C5=a5C8=a1+a2+a3+a4+a5+a6+a7+a8C2n=a1+a2+.+a2n,树状数组,对于序列a,我们设一个数组CCi=ai2k+1+aik为i在二进制下末尾0的个数C即为a的树状数组如何求k?,2k=xn+=lowbit(n);,树状数组,5、求和当要查询a1,a2.an的元素之和时,需要累加c数组中的q1,q2,q3.等一系列元素其中q1=n,q(i+1)=qi-lowbit(qi)所以计算a1+a2+.an可以实现为:intSum(intn)intresult=0;while(n!=0)result+=cn;n-=lowbit(n);returnresult;,树状数组,为什么是效率是log(n)的呢?以下给出证明:n=nlowbit(n)这一步实际上等价于将n的二进制的最后一个1减去。而n的二进制里最多有log(n)个1,所以查询效率是log(n)的。换句话说:若需改变ai,则ci、ci+lowbit(i)、ci+lowbit(i)+lowbit(i+lowbit(i)就是需要改变的c数组中的元素。若需查询si,则ci、ci-lowbit(i)、ci-lowbit(i)-lowbit(i-lowbit(i)就是需要累加的c数组中的元素。6、与线段树的比较树状数组是一个可以很高效的进行区间统计的数据结构。在思想上类似于线段树,比线段树节省空间,编程复杂度比线段树低,但适用范围比线段树小。,线段树,树状数组,7、扩展-二维树状数组一维树状数组很容易扩展到二维,二维树状数组如下所示:Cxy=sum(Aij)其中,x-lowbitx+1=i=x且y-lowbity+1=j=y,树状数组(例)HDU1166,#include#include#include#includeusingnamespacestd;#defineN50005intn;intaN,cN;intlowbit(intx)return(x,intmain()intcas=0;intt,w,u,v;ch
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 阅读节活动策划方案范文(3篇)
- 线上促销活动赠品方案策划(3篇)
- 弧形铝板施工方案(3篇)
- 镜面墙壁施工方案(3篇)
- 砂砾石隧洞施工方案(3篇)
- 培训会活动宣传方案策划(3篇)
- 郫县电梯加装施工方案(3篇)
- 中职旅游考试题库及答案
- 地铁安检考试题库及答案
- 安徽省马鞍山市和县2024-2025学年高三下学期高考二模历史试题含参考答案
- 粮油保管员(高级)职业技能鉴定参考试题(附答案)
- 集团统借统还管理制度
- 供电一线员工服务规范培训
- 皮肤医美行业分析
- 劳务施工施工方案
- 新部编版五年级语文上册第八单元课件
- 2025年信息技术实习生培训协议
- 中国急性缺血性卒中诊治指南(2023)解读
- ESD防静电知识培训
- SJG 71-2020 桥梁工程设计标准
- 加入音乐家协会申请书
评论
0/150
提交评论