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

差分数组的学习

文章目录

      • 1.差分数组的应用场景
      • 2.如何构造一个差分数组
        • 2.1 原数组转换为差分数组
        • 2.2 差分数组还原为原数组
      • 3.差分数组的特性

1.差分数组的应用场景

需要频繁对某个区间的数组进行增减操作

2.如何构造一个差分数组

2.1 原数组转换为差分数组
# 存在一个数组Nums,求出他的差分数组
diff = [0] * len(nums)
diff[0] = nums[0]
for i in range(1, len(nums)):
	diff[i] = nums[i] - nums[i-1]

在这里插入图片描述

2.2 差分数组还原为原数组
res = [0] * len(diff)
res[0] = nums[0]
for i in range(1, len(diff)):
	res[i] = res[i-1] + diff[i]

3.差分数组的特性

如果想对nums[i, j] 范围的数组加3
只需要对差分数组的diff[i] + 3, diff[j+1]-3即可
还原后的nums就是[i,j]范围内加3的结果


http://www.kler.cn/a/530990.html

相关文章:

  • 【Three.js+React】教程001:绘制简单的盒子
  • 鸿蒙HarmonyOS Next 视频边播放边缓存- OhosVideoCache
  • 求职刷题力扣DAY34--贪心算法part05
  • Vuex状态管理
  • git笔记-简单入门
  • 如何使用 DeepSeek 和 Dexscreener 构建免费的 AI 加密交易机器人?
  • 7-2 拯救外星人
  • DeepSeek R1 AI 论文翻译
  • C# 结构体介绍
  • Maven的三种项目打包方式——pom,jar,war的区别
  • 【系统性能】2.1 整机卡顿初探
  • 兼容性测试笔记
  • selenium记录Spiderbuf例题C03
  • Macos编译openjdk因berkeley-db版本问题失败解决办法
  • 为什么命令“echo -e “\033[9;0]“ > /dev/tty0“能控制开发板上的LCD不熄屏?
  • 制造业设备状态监控与生产优化实战:基于SQL的序列分析与状态机建模
  • 【PyQt】超级超级笨的pyqt计算器案例
  • deepseek 本地化部署和小模型微调
  • 当前热门文生图大模型介绍与优缺点分析
  • Rust `struct`和 `enum`番外《哪吒、白蛇传?》
  • 嵌入式知识点总结 操作系统 专题提升(三)-并发与互斥
  • 使用React和Material-UI构建TODO应用的前端UI
  • 无人机飞行惯导系统技术详解
  • deepseek本地部署+结合思路
  • sql主从同步
  • Med-R2:基于循证医学的检索推理框架:提升大语言模型医疗问答能力的新方法