<html><HEAD></HEAD><BODY> <textarearows="50"cols="50">/*****************http://www.anycodes.cn/zh/[[树状数组]线段数]高效:log(n)操作:位操作思想:二分法百度百科之外还有以下博客http://dongxicheng.org/structure/binary_indexed_tree/http://blog.csdn.net/int64ago/article/details/7429868#t3******************/#include<iostream>usingnamespacestd;intin[]={1,2,3,4,5,6,7,8,9};intn=9;intlowbit0(intt){returnt&(t^(t-1));}intlowbit(intx){returnx&-x;}/**************http://jinzhi.supfree.net/再度复习内存与位操作如存3为00000011-3 11111101按位与00000001**************///求前n项和intsum(intend){intsum=0;while(end>0){sum+=in[end];end-=lowbit(end);}returnsum;}//增加某个元素的大小voidaddx(intpos,intnum){while(pos<=n){in[pos]+=num;pos+=lowbit(pos);}}voidshow(){for(inti=0;i<9;i++)cout<<in[i]<<"";cout<<endl;}intmain(){show();addx(2,2);show();cout<<sum(5);return0;}/****对结果13还是有点疑问***/</textarea><textarearows="50"cols="50"></textarea> </BODY></html>