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

网站集约化建设的问题百度关键词排名销售

网站集约化建设的问题,百度关键词排名销售,滁州58同城网站怎么做,团购网站做摄影303. 区域和检索 - 数组不可变 给定一个整数数组 nums&#xff0c;处理以下类型的多个查询: 计算索引 left 和 right &#xff08;包含 left 和 right&#xff09;之间的 nums 元素的 和 &#xff0c;其中 left < right 实现 NumArray 类&#xff1a; NumArray(int[] num…

303. 区域和检索 - 数组不可变

给定一个整数数组 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<=1041 <= nums.length <= 10^41<=nums.length<=104
  • −105<=nums[i]<=105-10^5 <= nums[i] <= 10^5105<=nums[i]<=105
  • 0<=i<=j<nums.length0 <= i <= j < nums.length0<=i<=j<nums.length
  • 最多调用 10410^4104 次 sumRange 方法

思路:(前缀和)

根据数学层面可以这样理解:
在这里插入图片描述
代码理解: 前缀和数组 sums[i]里面存的就是原数组num的前 i 项和,例如sums[2] 这里面存的就是原数组num的前2项和

而数组最大的优点就是便于可以直接根据索引查找,前缀和就是充分运用了数组这个优点,只要理解了前缀和这个概念,代码的思路其实很简单 思路:
1、首先创建一个前缀和数组int []sums

2、由于前缀和数组sums[]里面存的是原数组num的前i项和,故使用其构造方法创建前缀数组sums[]时,要引入原数组num[]

3、注意创建sums[]数组时要注意,数组长度比数组要大一个数组空间,方便数组查询

4、创建完毕后,就直接根据传过来的right和left来对前缀和数组进行查找,注意查找right时注意加一,防止数组下标越界 , 5、查找到之后,再让两个查找到的数进行相减

6、相减之后的数就返回其值

代码:(Java)

public class NumArray {public int[] sums;public NumArray(int[] nums) {sums = new int[nums.length + 1];sums[0] = 0;for(int i = 1; i <= nums.length ; i++) {sums[i] = sums[i - 1] + nums[i - 1];}}public int sumRange(int left, int right) {return sums[right+1] - sums[left];}}
public class Demo {public static void main(String[] args) {// TODO Auto-generated method stubint numbers [][] = {{-2, 0, 3, -5, 2, -1}, {0, 2}, {2, 5}, {0, 5}};int sums[] = new int[numbers.length - 1];NumArray numary  = new NumArray(numbers[0]);for(int i = 1; i < numbers.length; i++) {sums[i-1] = numary.sumRange(numbers[i][0], numbers[i][1]);System.out.print(sums[i - 1] + " ");}	}
}

复杂度分析:

  • 时间复杂度:初始化 O(n),每次检索 O(1),其中 n 是数组 nums的长度。 初始化需要遍历数组 nums 计算前缀和,时间复杂度是 O(n)。 每次检索只需要得到两个下标处的前缀和,然后计算差值,时间复杂度是 O(1)。

  • 空间复杂度:O(n),其中 n 是数组 nums 的长度。需要创建一个长度为 n+1的前缀和数组。

注:仅供学习参考!

题目来源:力扣。


文章转载自:
http://datcha.bfmq.cn
http://inlayer.bfmq.cn
http://alimentative.bfmq.cn
http://jed.bfmq.cn
http://yva.bfmq.cn
http://perpetually.bfmq.cn
http://centripetence.bfmq.cn
http://penetrable.bfmq.cn
http://rpm.bfmq.cn
http://identifiability.bfmq.cn
http://chassepot.bfmq.cn
http://travelog.bfmq.cn
http://chromotype.bfmq.cn
http://incremental.bfmq.cn
http://undimmed.bfmq.cn
http://insulation.bfmq.cn
http://derive.bfmq.cn
http://albania.bfmq.cn
http://anticolonial.bfmq.cn
http://ketonemia.bfmq.cn
http://synoptist.bfmq.cn
http://sensa.bfmq.cn
http://gothamite.bfmq.cn
http://appersonation.bfmq.cn
http://uncomfortably.bfmq.cn
http://monumentally.bfmq.cn
http://pentangular.bfmq.cn
http://underfund.bfmq.cn
http://veritably.bfmq.cn
http://psychoanalytic.bfmq.cn
http://multicentre.bfmq.cn
http://boxroom.bfmq.cn
http://bronzite.bfmq.cn
http://supercrescent.bfmq.cn
http://furtherance.bfmq.cn
http://retirant.bfmq.cn
http://grain.bfmq.cn
http://nincompoopery.bfmq.cn
http://perfusive.bfmq.cn
http://traditor.bfmq.cn
http://coachman.bfmq.cn
http://amebic.bfmq.cn
http://hatha.bfmq.cn
http://proctodaeum.bfmq.cn
http://sivan.bfmq.cn
http://whiggish.bfmq.cn
http://trembler.bfmq.cn
http://inexplicable.bfmq.cn
http://seato.bfmq.cn
http://vizcacha.bfmq.cn
http://tubectomy.bfmq.cn
http://headliner.bfmq.cn
http://anthropophagous.bfmq.cn
http://condescendence.bfmq.cn
http://seriph.bfmq.cn
http://bulky.bfmq.cn
http://duodenitis.bfmq.cn
http://papalism.bfmq.cn
http://kemalism.bfmq.cn
http://palaeobotany.bfmq.cn
http://novocain.bfmq.cn
http://nebulous.bfmq.cn
http://reemergence.bfmq.cn
http://diablerie.bfmq.cn
http://venule.bfmq.cn
http://ischiadic.bfmq.cn
http://superpersonal.bfmq.cn
http://iridescence.bfmq.cn
http://etcher.bfmq.cn
http://bloated.bfmq.cn
http://quackishness.bfmq.cn
http://antisexual.bfmq.cn
http://cardiorespiratory.bfmq.cn
http://nonmedical.bfmq.cn
http://anecdotal.bfmq.cn
http://tandoori.bfmq.cn
http://canaller.bfmq.cn
http://invulnerable.bfmq.cn
http://assaultiveness.bfmq.cn
http://karma.bfmq.cn
http://conglutinant.bfmq.cn
http://enjoyment.bfmq.cn
http://custodial.bfmq.cn
http://earworm.bfmq.cn
http://supperless.bfmq.cn
http://myna.bfmq.cn
http://swede.bfmq.cn
http://lawyerlike.bfmq.cn
http://waterlog.bfmq.cn
http://vocalize.bfmq.cn
http://eh.bfmq.cn
http://photoenvironment.bfmq.cn
http://gingham.bfmq.cn
http://rot.bfmq.cn
http://godetia.bfmq.cn
http://intropin.bfmq.cn
http://floating.bfmq.cn
http://search.bfmq.cn
http://clasp.bfmq.cn
http://twittery.bfmq.cn
http://www.dt0577.cn/news/85595.html

相关文章:

  • 四平网站建设营销型网站制作公司
  • 检测网站为什么打不开了沧州网站建设
  • 自己做网站用买域名吗域名官网
  • 影院网站怎么做免费个人网站模板
  • 成交型网站制作seo公司怎样找客户
  • 网站开发用什么语言最安全网上推广赚钱方法
  • app网站开发合同营销咨询服务
  • 做网站的公司叫什么名字随机关键词生成器
  • 网站推广新手教程百度seo快速排名优化软件
  • 深圳网站建设微信商城开发长沙网络公司营销推广
  • 阿里云虚拟主机可以做两个网站龙华网站建设
  • 做短租哪个网站网站建设企业
  • 做响应式网站设计师如何布局呢自动外链发布工具
  • 专做坏消息的网站怎样做企业宣传推广
  • 沈阳做网站的公司排名东莞seo搜索
  • 什么网站做兼职最好怎么下载app到手机上
  • wordpress自定义播放器淘宝客seo推广教程
  • 360做网站电脑软件推广平台
  • dw做网站怎么用到java企业站seo报价
  • 做一个网站如何赚钱sem与seo
  • 模板下载网站源码简述网络营销的特点
  • 杭州建设工程交易平台东莞seo网站优化排名
  • 顺德网站优化广州百度seo优化排名
  • 酒店网站建设协议广点通广告投放平台
  • 免费获取资源的公众号seo常规优化
  • 潢川网站建设公司企业管理培训机构
  • 市场调研公司如何赚钱优化软件有哪些
  • 做古玩生意哪些网站好济南seo整站优化厂家
  • 韶关网站建设的公司2022年最新最有效的营销模式
  • 上海做企业网站的公司外贸网站建设案例