差分数组C++「建议收藏」

差分数组C++「建议收藏」差分数组在数组某一段数值同乘以一个值,或者求某数组的前n项和非常方便inta[]={0,1,2,3,4,5};b[i]=a[i]-a[i-1];(1<i≤n,b[1]=a[1],a[0]=b[0]=0)b[]={0,1,1,1,1,1}则称b[]是a的差分数组,它具有的性质是a[i]=b[i]+b[i-1]+…+b[1];如果要在数…

大家好,又见面了,我是你们的朋友全栈君。

差分数组在数组某一段数值同乘以一个值,或者求某数组的前n项和非常方便

int a[] = { 
   0,1,2,3,4,5};
b[i] = a[i] - a[i-1];(1<i≤n,b[1]=a[1],a[0] = b[0] = 0)

b[ ] = {0,1,1,1,1,1}
则称b[ ]是a的差分数组,它具有的性质是a[i] = b[i] + b[i-1] + … + b[1];

如果要在数组a的【x,y】区间上每个元素加上z,那么只要修改b[x] 和 b[y+1]这两个值
也就是:

b[x] += z;
b[y+1] -= z;

除此之外,我们还有

f[i]=f[i-1]+d[i](1<i≤n,f[1]=d[1]=a[1]);

sum[i]=sum[i-1]+f[i](1<i≤n,sum[1]=f[1]=d[1]=a[1])

所以 s u m [ i ] = ∑ a [ i ] sum[i] = \sum a[i] sum[i]=a[i]

在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/134548.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • pip换源 -pip更换国内镜像源「建议收藏」

    pip换源 -pip更换国内镜像源「建议收藏」更换pip源到国内镜像2017年02月16日15:06:53阅读数:70784pip国内的一些镜像  阿里云http://mirrors.aliyun.com/pypi/simple/  中国科技大学https://pypi.mirrors.ustc.edu.cn/simple/  豆瓣(douban)http://pypi.douban.com/simple/…

    2022年6月4日
    60
  • 设置VScode的快捷键

    设置VScode的快捷键打开快捷键面板首先,打开快捷键设置面板:文件-首选项-键盘快捷键Ctrl+k,Ctrl+s也能打开设置快捷键这一步,需要已经知道,默认的快捷键是什么。比如,跳转到上一个编辑位置(VScode中叫前进,奇了怪),默认的是”alt+right”。那么,在最上方的面板中输入:我想要改成”Ctrl+Alt+右箭头”,点击进入,按下该组合键:然后,点击“已有2条命令的按键绑定与此相同”,清理已有的快捷键设置:然后,再次尝试绑定,就可以成功了:…

    2022年5月25日
    337
  • 彻底弄懂C语言数组名

    彻底弄懂C语言数组名先定义一个一维数组inta[]={0,1,2,3,4,5,6,7,8,9};一、数组名是什么数组名的值是数组首元素的指针常量。数组名不是指针,但大多数使用到数组名的地方,编译器都会把数组名隐式转换成一个指向数组首元素的指针来处理。只有两种情况下例外:第一种是对数组名使用sizeof运算符sizeof(a)这将会得到整个数组所占的内存大小,a是长度为10的int(4字节

    2022年7月11日
    24
  • 迁移数据库数据到SQL Server 2017

    迁移数据库数据到SQL Server 2017

    2021年11月26日
    39
  • 补番技巧

    补番技巧好想像别的大神一样写写技术博客啊,用代码来装点我的文章,可惜才疏学浅,我居然一点点的那个水平都没有,也只好写写这些每天所做的堕落的事情的方法了。。。。  1、补番强烈推荐B站,也就是大家常说的哔哩哔哩动画,网址为 http://www.bilibili.com/ ,原因有三个。第一:B站的大多是视频是没有广告的,所以不会让广告影响心情。第二:B站的弹幕文化非常有趣,有趣的空

    2022年8月23日
    11
  • ziplist、quicklist、listpack源码设计解读

    从ziplist到quicklist,再到listpack的启发介绍Redis优化设计数据结构来提升内存利用率的时候,提到可以使用压缩列表(ziplist)来保存数据。所以现在你应该也知道,ziplist的最大特点,就是它被设计成一种内存紧凑型的数据结构,占用一块连续的内存空间,以达到节省内存的目的。但是,在计算机系统中,任何一个设计都是有利有弊的。对于ziplist来说,这个道理同样成立。虽然ziplist节省了内存开销,可它也存在两个设计代价:一是不能保存过多的元素,否则访问性能会

    2022年4月9日
    45

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号