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

网站咋开通python3网站开发

网站咋开通,python3网站开发,国际购物网站排名,华为中小企业解决方案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))提示 1nums.length1041 nums.length 10^41nums.length104−105nums[i]105-10^5 nums[i] 10^5−105nums[i]1050ijnums.length0 i j nums.length0ijnums.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[right1] - 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 的长度。需要创建一个长度为 n1的前缀和数组。 注仅供学习参考 题目来源力扣。
http://www.w-s-a.com/news/579700/

相关文章:

  • 做app做网站从何学起网站设计需要什么证
  • 设计网站最重要的是要有良好的短网址还原
  • 大连建设银行招聘网站做seo是要先有网站吗
  • 中山做网站的wordpress建站教程百科
  • 湛江专业网站制作做网站需要工具
  • 做音箱木工网站吉林平安建设网站
  • 品牌网站建设咨询灯光设计网站推荐
  • 温州网站运营打开百度一下网页版
  • 网站有情链接怎么做住房公积金个体工商户
  • 内蒙古网站开发网站开发验收资料
  • 温州网站建设首选国鼎网络网络营销方法可分为两类
  • 做张家界旅游网站多少钱企业推广网络营销
  • 代做毕设网站推荐广东手机微信网站制作
  • 福州建设工程质量监督网站专业做公司宣传网站的
  • 百度云建站教程网站工程师是做什么的
  • 手机在线制作网站一级消防工程师考试试题及答案
  • 网站设计的需求网页制作教程和素材
  • 徐州网站建设 网站推广WordPress 文章编辑
  • 做什么网站比较受欢迎软件商店下载安装2023版本最新
  • 做ip资讯的网站怎么在wordpress中套用同行网页
  • 医院网站如何备案东莞优化公司收费
  • 罗村网站开发适合ps做图的素材网站有哪些
  • 网站建设中 油财宝企业网址怎么整
  • asp.net空网站php网站开发要学什么
  • 做可视化的网站微信网站模版下载
  • 包头移动的网站建设茂名建站价格
  • 网站文章内容一键排版功能铜山网站建设
  • cdr可不可做网站对网站建设起到计划和指导的作用
  • 合肥最好的网站建设网页设计心得体会2000字
  • 西安网站品牌建设门户网站类型