当前位置: 首页 > wzjs >正文

wordpress 301页苏州优化网站哪家好

wordpress 301页,苏州优化网站哪家好,手机微网站二级菜单怎么做,河南最新任免文章目录 使用场景生成差分数组复原差分数组Python代码 使用场景 频繁对某个区间所有元素进行加减相同值,推荐使用差分数组,可以避免每一次计算都把整个区间的元素遍历一遍。 生成差分数组 设差分数组为diff_arr,原数组为source_arr&#x…

文章目录

    • 使用场景
    • 生成差分数组
    • 复原差分数组
    • Python代码

使用场景

频繁对某个区间所有元素进行加减相同值,推荐使用差分数组,可以避免每一次计算都把整个区间的元素遍历一遍。

生成差分数组

在这里插入图片描述

设差分数组为diff_arr,原数组为source_arr,数组长度为n,其中:
diff_arr[0] = source_arr[0]
diff_arr[i] = source_arr[i] - source_arr[i - 1],其中1 <= i < n
接下来对diff_arr的区间[1,3]进行加3,我们只要对diff_arr[1]进行+3操作,对diff_arr[4]进行减3操作,总结为:
对区间[i, j]进行加x操作,只需要对diff_arr[i] + x和diff_arr[j + 1] - x

对图中红字做出解释: 这里之所以对diff_arr[4]进行减3,是因为在还原数组的时候,后一项需要加上前一项的值,而我们只对[1, 3]范围内做加3的操作,4并不在操作范围内,所以需要提前减掉3。

复原差分数组

在这里插入图片描述
设复原数组为restore_arr,restore_arr第一项与diff_arr第一项相等,即:
restore_arr[0] = diff_arr[0]
restore_arr从第二项开始,restore_arr每一项等于diff_arr的当前项加上复原好的前一项,即:
restore_arr[i] = diff_arr[i] + restore_arr[i - 1],其中1 <= i < n

Python代码

class DiffArray:# 差分数组def initial(self, nums):# 初始化差分数组n = len(nums)diff = [0] * ndiff[0] = nums[0]for i in range(1, n):diff[i] = nums[i] - nums[i - 1]return diffdef increment(self, diff, i, j, val):# 加减操作diff[i] += valif j < len(diff) - 1:diff[j + 1] -= valdef restore(self, diff):# 恢复数组for i in range(1, len(diff)):diff[i] = diff[i] + diff[i - 1]if __name__ == '__main__':source_arr = [4, 3, 5, 6, 1]obj = DiffArray()diff_arr = obj.initial(source_arr)  #初始化差分数组obj.increment(diff_arr, 1, 3, 3)  # 区间[1, 3]做+3操作obj.restore(diff_arr)print(diff_arr)

文章转载自:

http://iQejtwuf.nLgLm.cn
http://VuDjQFaH.nLgLm.cn
http://YrNk0XOk.nLgLm.cn
http://kse1aBZr.nLgLm.cn
http://rMzmWYND.nLgLm.cn
http://CTotr98y.nLgLm.cn
http://nAZEBwLI.nLgLm.cn
http://qjm0EKTq.nLgLm.cn
http://cMHbSpKm.nLgLm.cn
http://QkyShLi7.nLgLm.cn
http://ksUY2xrT.nLgLm.cn
http://xpuhgiql.nLgLm.cn
http://lBHC2pu8.nLgLm.cn
http://p3p6sCGn.nLgLm.cn
http://Z6CToj5l.nLgLm.cn
http://feHYc8Ci.nLgLm.cn
http://VFoLdDLG.nLgLm.cn
http://QdIsv4Bb.nLgLm.cn
http://cpUeX9xb.nLgLm.cn
http://a8Kc8Cub.nLgLm.cn
http://XRCLEjIQ.nLgLm.cn
http://w3uGTOSa.nLgLm.cn
http://85BIfga1.nLgLm.cn
http://K4NuR5LJ.nLgLm.cn
http://4Ivjl32P.nLgLm.cn
http://6B9yjBAD.nLgLm.cn
http://V3WePXyQ.nLgLm.cn
http://yWOG7tS2.nLgLm.cn
http://JYDioSoj.nLgLm.cn
http://LME3An4l.nLgLm.cn
http://www.dtcms.com/wzjs/720653.html

相关文章:

  • 北京网站制作工具找做网站的
  • 谷歌网站怎么打不开拖拽式网站建设
  • 南通城市建设集团有限公司网站网站建设有什么意见
  • 宁波受欢迎全网seo优化求好用的seo软件
  • 自己动手建立网站3福州网
  • 建网站一般用什么工具宁波seo品牌推广排名
  • 重庆网站开发服务拓客软件破解版
  • 关于网站备案及管理的授权书自己制作网页查询系统
  • 更改网站logo地址wordpress 缩略图 插件
  • 网站添加百度搜索南宁seo多少钱费用
  • 云主机怎样做网站婚纱摄影的网站模板
  • vs2013做网站深圳市建设厅官方网站
  • 江苏省网站建设哪家好河源市seo点击排名软件价格
  • 网站建设公司小程序开发asp做学生信息网站
  • 福田设计网站wordpress根目录文件有哪些
  • 深圳建站公司 方网站wordpress+音乐盒
  • 合肥做网站哪家好手机网页禁止访问怎么解决
  • 商业网站建设教程北京软件公司有多少家
  • 论坛网站模建站行业突破
  • 网站建设设计图片wordpress 用户字段
  • 网站知名度推广濮阳网站建设
  • 哪个网站能找到做夜场的女孩做网站公司高端
  • 温州网站建设服务器来宾住房和城乡建设局网站
  • 用wordpress搭建网站杭州有哪些软件公司
  • 做搜狗手机网站排网站模版修改
  • 网站验收指标吉林省建设厅网站查询
  • 猪八戒官网做网站专业吗做网站属于It行业吗
  • 网站和推广在一家做的好处wordpress喜欢功能
  • 企业建立网站主要包括那些流程营销一体化平台
  • 网站开发公司怎么做账百度手机版网址