力扣热题100_子串_560_和为 K 的子数组


题目链接

560.和为 K 的子数组

解题思路

1.定义变量count(计算个数,返回值)为0、n(当前nums长度)、preSums(利用利用defaultdict的特性,当presum-k不存在时,返回的是0),其中先定义键为0,值为1、presum为0
2.for range循环遍历n,处理nums数组里,符合条件的数据
2(1).i所在nums数组索引里的值赋值累加给presum;
2(2).presum-k所在preSums数组索引里的值赋值累加给count;
2(3).presum所在preSums数组索引里的值赋值累加1

解题代码

class Solution:
    def subarraySum(self, nums: List[int], k: int) -> int:
        count = 0
        n = len(nums)
        preSums = collections.defaultdict(int)
        preSums[0] = 1

        presum = 0
        for i in range(n):
            presum += nums[i]
            count += preSums[presum - k]
            preSums[presum] += 1 
        return count

相关推荐

  1. 100__560_ K 数组

    2024-02-23 13:34:01       31 阅读
  2. 560. K 数组

    2024-02-23 13:34:01       10 阅读
  3. LeetCode-100560. K 数组

    2024-02-23 13:34:01       18 阅读
  4. 每日OJ_算法_前缀⑤_560. K 数组

    2024-02-23 13:34:01       38 阅读
  5. 100】9.k数组

    2024-02-23 13:34:01       46 阅读
  6. 题库第10K数组

    2024-02-23 13:34:01       17 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-02-23 13:34:01       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-02-23 13:34:01       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-02-23 13:34:01       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-02-23 13:34:01       20 阅读

热门阅读

  1. 爬虫基本库的使用(httpx库的详细解析)

    2024-02-23 13:34:01       29 阅读
  2. CAN Linux C应用编程

    2024-02-23 13:34:01       18 阅读
  3. 2024.2.22

    2024-02-23 13:34:01       21 阅读
  4. idea打开项目白屏

    2024-02-23 13:34:01       34 阅读
  5. 【LeetCode每日一题】单调栈316去除重复字母

    2024-02-23 13:34:01       31 阅读
  6. uniApp中 将2一张图片叠加到指定位置

    2024-02-23 13:34:01       27 阅读
  7. 物联网中基于WiFi的室内温度检测系统设计

    2024-02-23 13:34:01       25 阅读