Java实现 LeetCode 303 区域和检索 - 数组不可变
2023-09-14 08:58:05 时间
303. 区域和检索 - 数组不可变
给定一个整数数组 nums,求出数组从索引 i 到 j (i ≤ j) 范围内元素的总和,包含 i, j 两点。
示例:
给定 nums = [-2, 0, 3, -5, 2, -1],求和函数为 sumRange()
sumRange(0, 2) -> 1
sumRange(2, 5) -> -1
sumRange(0, 5) -> -3
说明:
你可以假设数组不可变。
会多次调用 sumRange 方法。
class NumArray {
private int[] sums;
public NumArray(int[] nums) {
sums = new int[nums.length];
if (nums.length == 0) {
return;
}
sums[0] = nums[0];
for (int i = 1; i < nums.length; i++) {
sums[i] += sums[i - 1] + nums[i];
}
}
public int sumRange(int i, int j) {
if (i == 0) {
return sums[j];
} else {
return sums[j] - sums[i - 1];
}
}
}
/**
* Your NumArray object will be instantiated and called as such:
* NumArray obj = new NumArray(nums);
* int param_1 = obj.sumRange(i,j);
*/
相关文章
- java中数组转列表_Java数组转list
- java map 二维数组_Java二维数组实现简单Map
- java数组定义长度_JAVA数组的定义
- java backoff_Java BackOff类代码示例
- java和基岩版区别_我的世界基岩版与Java版有什么区别?「建议收藏」
- java 二维数组 arraycopy_Java对数组的复制[通俗易懂]
- java数组去重_JAVA数组去重常用方法
- java 阶乘算法_Java 实现阶乘算法
- 零基础学Java(10)面向对象-使用LocalDate类完成日历设计
- 【说站】java调用shell脚本的方法
- Java生成/解析二维码-ZXing的使用
- java 内存分析工具 生成 dump_java内存检测工具
- java 检测 Java 是否运行在64bit 的JVM上详解编程语言
- Java连接MySQL数据库的简单步骤(java如何连接mysql数据库)
- 运行参数Linux 下修改 Java 运行参数的指南(linux修改java)
- 技巧Linux环境下提高Java编译效率的技巧(linux下java编译)
- Java操作Redis实现定时失效(redisjava过期)
- 构建Java应用程序中Redis集群的方法(java连redis集群)
- Linux下Java命令:简介与基本用法(linux下java命令)
- Linux与Java结合,打造完美解决方案(linux和java)
- 本使用Oracle Java 进行升级新版本带来新体验(oracle java版)
- Java使用JDBC连接Oracle_MSSQL实例代码