Subarray Sum java solution (prefix sum)
来源:互联网 发布:爱因斯坦 以色列 知乎 编辑:程序博客网 时间:2024/06/15 11:51
Subarray sum
description:
Given an integer array, find a subarray where the sum of numbers is zero. Your code should return the index of the first number and the index of the last number.
Notice
There is at least one subarray that it’s sum equals to zero.
Example
Given [-3, 1, 2, -3, 4], return [0, 2] or [1, 3].
* 使用prefix sum的方法进行处理,首先使用map的来进行存储数据,当下一个数据与所存储的数据相同时,说明出现了下一个的0 此时使用arraylist来进行存储。时间复杂度O(n), 空间复杂度O(n) *
public class Solution { /** * @param nums: A list of integers * @return: A list of integers includes the index of the first number * and the index of the last number */ public ArrayList<Integer> subarraySum(int[] nums) { // write your code here ArrayList<Integer> arr = new ArrayList<>(); if (nums == null || nums.length == 0) { return null; } Map<Integer, Integer> map = new HashMap<>(); map.put(0, -1); int sum = 0; for (int i = 0; i < nums.length; i++) { sum += nums[i]; if (map.containsKey(sum)) { arr.add(map.get(sum) + 1); arr.add(i); return arr; } map.put(sum, i); } return arr; }}
0 0
- Subarray Sum java solution (prefix sum)
- Lintcode138 Subarray Sum solution 题解
- Lintcode139 Subarray Sum Closest solution 题解
- LeetCode112. Path Sum java solution
- Subarray Sum
- Subarray Sum
- subarray sum
- Subarray Sum
- Subarray Sum
- leetcode Minimum Size Subarray Sum java
- Minimum Size Subarray Sum 【leetCode】Java
- [leetcode-209]Minimum Size Subarray Sum(java)
- [4]560. Subarray Sum Equals K(Java)
- LeetCode-Medium-Java-Subarray Sum Equals K
- leetcode001:3sum solution
- [LeetCode] 3Sum Solution
- [LeetCode] 4Sum Solution
- [LeetCode] 3 Sum, Solution
- bzoj 1079 [SCOI2008]着色方案
- Golang1.8获取Windows硬件信息小实例.
- 如何解读执行计划(下)
- 设计模式 -观察者模式
- Android百度地图使用详解
- Subarray Sum java solution (prefix sum)
- 对象(JavaScript)
- tomcat catalina.sh JAVA_OPTS参数说明与配置
- 怎样让插入Excel的图片不能移动
- Angular4学习笔记(七):界面优化
- 文件目录管理-RHCEday1
- 题目1134:密码翻译
- 使用JavaScript修改伪类样式的方法总结
- HashSet