- 博客(1)
- 收藏
- 关注
原创 2017年C语言北京培训日记
树状数组树状数组支持单点修改和前缀查询。通过加特技(???)可以让它支持更多操作为了不断一分为二,引入一个辅助量:lowbit假如有这么个数x,则C[x]=x-lowbit(x)+1~x所有元素权值的和。lowbit(x)=x&-x 表示x这个数在二进制下的从右到左第一个1及后面的0.比如4在二进制中是00000100,-4二进制表示为补码(-x=2^32-x),就是10000100,他们两个通过与运算后的值是00000100 &10000100 =00000100,即为4.
2020-06-12 23:08:19
1015
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅