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

大同网站设计专业seo站长工具全面查询网站

大同网站设计,专业seo站长工具全面查询网站,晋城建设路网站,邀请专家集体会诊网站建设前缀和数组的应用 区域和检索 - 数组不可变题目描述前缀和数组代码演示 区域和检索 - 数组不可变 难度 - 简单 原题链接 - 区域和检索 - 数组不可变 题目描述 给定一个整数数组 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.wangmingla.cn/news/52252.html

相关文章:

  • 广州个人网站备案要多久站长工具收录查询
  • 做经营网站怎么赚钱b站推广怎么买
  • 淘宝请人做网站被骗外贸电商平台哪个网站最好
  • html5电商网页制作郑州网络seo公司
  • 无锡做网站企业关键词歌曲
  • 成都网站建设 好多科技搜索引擎调价平台哪个好
  • 商城网站案例网络推广公司经营范围
  • dedecms网站关键词怎样制作一个网站
  • 手机娱乐网站制作百度云登录首页
  • 在哪里买域名百家号seo
  • 87网站建设工作室网站搭建免费
  • 石岩网站建设sem是什么显微镜
  • 环球易购做中东的网站昆明seocn整站优化
  • 免费10大看盘软件网站seo设置是什么
  • 网站怎么做图片转换爱站seo查询
  • 襄阳做网站百度高级搜索指令
  • 手机网站免费建站新闻稿件
  • 网站查询域名ip查询厦门百度关键词推广
  • 黄岛网站建设多少钱搜索引擎推广方式有哪些
  • 贵州企业网站开发公司厦门百度竞价
  • 硬盘做免费嗳暧视频网站内容企业推广
  • 长沙网站制作哪家东莞互联网推广
  • 网站开发发帖语言百度热搜高考大数据
  • 网站改版灵感库成都网络营销搜索推广
  • 东莞做网站建设长沙网站公司品牌
  • 网页版微博怎么做优化关键词
  • 在线做简单的网站吗公司软文怎么写
  • 济源做网站中国婚恋网站排名
  • 网站设计原型图怎么做百度seo一本通
  • 灰色词秒收录代发seo关键字排名优化