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

广州建设公司网站付费链接生成平台

广州建设公司网站,付费链接生成平台,制作网页按钮,大型门户网站建设是什么前缀和数组的应用 区域和检索 - 数组不可变题目描述前缀和数组代码演示 区域和检索 - 数组不可变 难度 - 简单 原题链接 - 区域和检索 - 数组不可变 题目描述 给定一个整数数组 nums,处理以下类型的多个查询: 计算索引 left 和 right (包含 left 和 righ…

前缀和数组的应用

  • 区域和检索 - 数组不可变
    • 题目描述
    • 前缀和数组
    • 代码演示

区域和检索 - 数组不可变

难度 - 简单
原题链接 - 区域和检索 - 数组不可变

题目描述

给定一个整数数组 nums,处理以下类型的多个查询:
计算索引 left 和 right (包含 left 和 right)之间的 nums 元素的 和 ,其中 left <= right
实现 NumArray 类:
NumArray(int[] nums) 使用数组 nums 初始化对象
int sumRange(int i, int j) 返回数组 nums 中索引 left 和 right 之间的元素的 总和 ,包含 left 和 right 两点(也就是 nums[left] + nums[left + 1] + … + nums[right] )

示例 1:
输入:
[“NumArray”, “sumRange”, “sumRange”, “sumRange”]
[[[-2, 0, 3, -5, 2, -1]], [0, 2], [2, 5], [0, 5]]
输出:
[null, 1, -1, -3]
解释:
NumArray numArray = new NumArray([-2, 0, 3, -5, 2, -1]);
numArray.sumRange(0, 2); // return 1 ((-2) + 0 + 3)
numArray.sumRange(2, 5); // return -1 (3 + (-5) + 2 + (-1))
numArray.sumRange(0, 5); // return -3 ((-2) + 0 + 3 + (-5) + 2 + (-1))

提示:
1 <= nums.length <= 1e4
-105 <= nums[i] <= 1e5
0 <= i <= j < nums.length
最多调用 104 次 sumRange 方法
在这里插入图片描述

前缀和数组

核心思路是我们 new 一个新的数组 preSum 出来,preSum[i] 记录 nums[0…i-1] 的累加和,看图 10 = 3 + 5 + 2:
在这里插入图片描述
看这个 preSum 数组,如果我想求索引区间 [1, 4] 内的所有元素之和,就可以通过 preSum[5] - preSum[1] 得出。

:这样,sumRange 函数仅仅需要做一次减法运算,避免了每次进行 for 循环调用,最坏时间复杂度为常数 O(1)。
这个技巧在生活中运用也挺广泛的,比方说,你们班上有若干同学,每个同学有一个期末考试的成绩(满分 100 分),那么请你实现一个 API,输入任意一个分数段,返回有多少同学的成绩在这个分数段内。

代码演示

class NumArray {private int[]preSum;public NumArray(int[] nums) {preSum = new int[nums.length];preSum[0] = nums[0];for(int i = 1; i < nums.length;i++){preSum[i] = preSum[i - 1] + nums[i];}}public int sumRange(int left, int right) {  return left != 0 ? preSum[right] - preSum[left - 1] : preSum[right] ;}
}
http://www.yayakq.cn/news/337252/

相关文章:

  • 网站制公司一流的哈尔滨网站建设
  • 孝感市建设局网站营销网站 建设 高端
  • 深圳做网站多少钱学校校园网站
  • 卖文具做网站好还是做电商好安徽工程建设造价信息网站
  • 贷款网站源码下载网页设计总结论文
  • 90设计网站兼职怎么样网页制作与网站建设完全学习手册
  • 营销型网站软件如何建设数据报表网站
  • 三门峡做网站公司网站开发 慕课
  • 电子商务网站建设的问题有个网站可以学做ppt
  • win8风格网站开发实例wordpress+js插件开发
  • 怎样创建网站视频网站建设 wordpress系统
  • 建一个网站难不难c2c典型电子商务平台有哪些
  • 吉林省建设厅网站市政资质要求wordpress设置新窗口打开
  • 网站的内容管理周口市住房和城乡建设局网站
  • 河北高端网站设计网易企业邮箱是什么
  • 如何用flash做网站西安建设网站公司哪家好
  • 做一套网站多钱渭南网站建设网站排名优化
  • 成立公司怎么做网站网站安全维护包括什么
  • 寻找长沙网站建设wordpress 段落缩进
  • 珠海网站建设推广公司北京网页设计机构
  • 个人网站申请怎么把自己做的网站放在
  • 图片类网站建设武进网站建设咨询
  • 如何建立自己的商城网站wordpress二级导航
  • 做展示型网站高效网站推广公司
  • 做网站和做app哪个贵桂林北站离阳朔多远
  • 印团网网站是哪家做的长沙竞价优化
  • 学习做网站是什么专业帮人做网站在徐州被敲诈五万
  • 哪里学网站建设推广录播教育系统网站建设费用
  • wordpress对接公众号海阳seo排名优化培训
  • 无锡外贸网站制作公司建网站建设网站