Leetcode 560[medium]. Subarray Sum Equals K
来源:互联网 发布:python selenium实战 编辑:程序博客网 时间:2024/05/16 06:26
难度:medium
Given an array of integers and an integer k, you need to find the total number of continuous subarrays whose sum equals to k.
Example 1:
Input:nums = [1,1,1], k = 2Output: 2
Note:
- The length of the array is in range [1, 20,000].
- The range of numbers in the array is [-1000, 1000] and the range of the integer k is [-1e7, 1e7]
思路:给定一个list,找到其中所有和等于K的连续subarray。返回subarray的总数。
用一个哈希表来建立连续子数组之和跟其出现次数之间的映射。
初始化要加入{0,1}这对映射,是因为我们的解题思路是遍历数组中的数字,用sum来记录到当前位置的累加和,我们建立哈希表的目的是为了可以快速的查找sum-k是否存在,即是否有连续子数组的和为sum-k,如果存在的话,那么和为k的子数组一定也存在,这样当sum刚好为k的时候,那么数组从起始到当前位置的这段子数组的和就是k,满足题意,如果哈希表中实现没有m[0]项的话,这个符合题意的结果就无法累加到结果res中。
count.get()函数用于运算中出现的数值相同的sum。
阅读全文
0 0
- Leetcode 560[medium]. Subarray Sum Equals K
- LeetCode-Medium-Java-Subarray Sum Equals K
- Leetcode 325. Maximum Size Subarray Sum Equals k (Medium) (cpp)
- [leetcode 560]Subarray Sum Equals K
- 20170603-leetcode-560-Subarray Sum Equals K
- leetcode 560Subarray Sum Equals K题解
- leetcode(560). Subarray Sum Equals K
- LeetCode 560 Subarray Sum Equals K
- [LeetCode]Subarray Sum Equals K
- leetCode-Subarray Sum Equals K
- Sum—LeetCode-560 Subarray Sum Equals K
- LeetCode 560 : Subarray Sum Equals K(java)
- 【Leetcode】Maximum Size Subarray Sum Equals k
- leetcode Maximum Size Subarray Sum Equals k
- Leetcode: Maximum Size Subarray Sum Equals k
- Leetcode 560. Subarray Sum Equals K
- [leetcode] 560. Subarray Sum Equals K
- leetcode题解-560. Subarray Sum Equals K
- vim折腾
- CAS之5.2x版本单点登录服务安装-yellowcong
- AndroidStudio执行Java的main方法报错解决方案
- 从上到下按层打印二叉树,同一层结点从左至右输出。每一层输出一行。
- [UNIX]signal函数捕捉SIGCLD信号
- Leetcode 560[medium]. Subarray Sum Equals K
- PowerDesigner导出sql
- getReadableDatebase() 和getwriteableDatebase()的解读
- Unity3D 通过鼠标滚轮来放大或缩小视角的大小
- linux私房菜 之centos 的安装
- ThinkPHP5 清除runtime缓存文件
- 工厂模式---mybatis中的应用
- Git图形管理界面TortoiseGit客户端的安装和使用
- Java多态中的缺陷