news 2026/6/6 3:03:25

力扣 500 和为 K 的子数组

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
力扣 500 和为 K 的子数组
Problem: 560.和为 K 的子数组

思路

前缀和 + 小技巧

解题过程

题目大意可以理解为,让找一个数组中的连续非空子数组的和为k的数量。
这里可以使用前缀和数组suf[]来快速找到符合条件的子数组头和尾。因为一个子数组(i,j)的大小为suf[j] - suf[i-1],因此我们这里只需要找到suf[j] - suf[i-1] = k的两个数,那么题目就变成找到两个数的差为k。那么显而易见可以用哈希来找。
这里有个小技巧,我一开始存储的哈希是把suf[i]和i一起存了,于是变得判断当前的i是否大于哈希找出来的i(因为j>i-1),就得多个查找过程,这样可能会超时,后面发现直接边查边存就不会有这种问题了,这个小技巧适用于查找过程中有下标大小影响的时候,因为ii比当前下班大的下标的数据还未存入,所以这个时候查询只会查找到比当前下标小的数据。

复杂度

  • 时间复杂度: O(n)
  • 空间复杂度:O(n)

Code

class Solution { public int subarraySum(int[] nums, int k) { int len = nums.length; int[] suf = new int[len + 1]; for(int i = 0; i < len; i++) { suf[i + 1] = nums[i] + suf[i]; } Map<Integer,Integer> map = new HashMap<>(); int ans = 0; for(int i = 0; i <= len; i++) { int dif = suf[i] - k; ans += map.getOrDefault(dif, 0); map.merge(suf[i], 1, Integer::sum); } return ans; } }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/3 13:59:44

AI学会理解物理法则:OpenAI Sora 2如何重塑视频生成新范式

欢迎来到小灰灰的博客空间&#xff01;Weclome you&#xff01; 博客主页&#xff1a;IT小灰灰 爱发电&#xff1a;小灰灰的爱发电 热爱领域&#xff1a;前端&#xff08;HTML&#xff09;、后端&#xff08;PHP&#xff09;、人工智能、云服务 目录 一、物理引擎的"顿悟…

作者头像 李华
网站建设 2026/6/5 15:35:16

全连接层(Fully Connected Layer)

全连接层&#xff08;Fully Connected Layer&#xff0c;又称稠密层/Dense Layer&#xff09;是神经网络中最基础且重要的组件之一&#xff0c;广泛应用于多层感知机&#xff08;MLP&#xff09;、卷积神经网络&#xff08;CNN&#xff09;和Transformer等架构中。以下是对全连…

作者头像 李华
网站建设 2026/6/4 3:46:00

一文讲透布隆过滤器实现原理及应用场景总结

布隆过滤器的工作原理布隆过滤器的工作原理基于三个核心要素&#xff1a;1. 一个大的位数组&#xff08;Bit Array&#xff09;这是布隆过滤器的存储主体。它是一个长度为 m 的数组&#xff0c;每个位置只存储一个比特&#xff08;0或1&#xff09;。初始时&#xff0c;所有位都…

作者头像 李华
网站建设 2026/6/4 8:26:48

理性抉择方可行远——企业AI转型的路径选择与风险管控

数字化浪潮下&#xff0c;AI转型已成为企业提升核心竞争力的必答题。然而现实中&#xff0c;不少企业陷入“转型即烧钱”“技术即万能”的误区&#xff1a;传统制造企业盲目自研大模型&#xff0c;耗费数百万后无功而返&#xff1b;互联网公司一味追求API集成便捷性&#xff0c…

作者头像 李华
网站建设 2026/6/5 19:57:22

C51_74HC595串口转并口

文章目录一、74HC595   1、芯片引脚   2、内部框图   3、时序操作二、单芯片工模式   1、原理图   2、驱动代码     1&#xff09;、74hc595.h     2&#xff09;、74hc595.c     3&#xff09;、mian.c三、级联工作模式   1、原理图   2、驱动代码 …

作者头像 李华
网站建设 2026/6/3 6:20:40

C51_HC-SR04超声波模块

文章目录一、HC-SR04   1、电气参数   2、引脚二、HC-SR04工作原理   1、基本工作原理   2、超声波时序图   3、原理图三、代码实例   1、UT.h   2、UT.c   3、main.c   4、实例现象一、HC-SR04 HC-SR04 超声波测距模块可提供 2cm-400cm 的非接触式距离感测功…

作者头像 李华