当前位置: 首页 > news >正文

【hot100篇-python刷题记录】【和为 K 的子数组】

R5-子串篇

目录

思路:

优化:

tip:

代码:

结果: 

ps:

思路:

滑动,应该可以使用滑动窗口来解题。

貌似前缀和也可以,left,right两个指针,right的前缀和-left的前缀和表示的就是从left到right数组的和。

这题之前做过,有点印象,先入为主。

要利用前缀和计算某个连续数组的值。

先使用哈希表记录每个前缀和出现的次数。

当计算到某个前缀和为s的时候,我们判断s-k这个前缀和是否存在。

如果这个前缀和是存在的,那么说明从s-k的位置到s的位置这一段连续的数组是符合题意的。

因为该数组的取值可能是负数,所有可能有多个前缀和相同的情况(这也印证了前面哈希表记录前缀和出现的次数而不是位置)。

优化:

前面提到的判断前缀和以及计算前缀和次数可以放在同一个for循环中。

tip:

#数组-1位置的前缀和0应该为1

代码:

class Solution:def subarraySum(self, nums: List[int], k: int) -> int:ret=0s=0dict=defaultdict(int)#数组-1位置的前缀和0应该为1dict[0]=1for x in nums:s+=xret+=dict[s-k]dict[s]+=1return ret

结果: 

ps:

今夕是何年,我竟时差倒。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 写一个githubDemo
  • docker 安装minio并配置https域名访问
  • 4款AI 生成 PPT的工具,帮你赶上演示文稿的新趋势!
  • RabbitMQ的核心概念
  • 《九歌· 程序员》
  • 【stm32项目】多功能智能家居室内灯光控制系统设计与实现(完整工程资料源码)
  • kafka运维常用命令
  • 存储实验:华为异构存储在线接管与在线数据迁移(Smart Virtualization Smart Migration 特性)
  • C++ //练习 17.12 使用前一题中的数据结构,编写一个函数,它接受一个问题编号和一个表示真/假解答的值,函数根据这两个参数更新测验的解答。
  • 【轻松拿捏】什么是多态?如何在 Java 中实现多态?
  • 30. 串联所有单词的子串【 力扣(LeetCode) 】
  • 暑假算法刷题日记 Day 10
  • 记录jenkins的一个错误
  • 微信小程序request的请求格式是什么
  • 搭建内网开发环境(一)|基于docker快速部署开发环境
  • Android优雅地处理按钮重复点击
  • bootstrap创建登录注册页面
  • - C#编程大幅提高OUTLOOK的邮件搜索能力!
  • css属性的继承、初识值、计算值、当前值、应用值
  • Javascript基础之Array数组API
  • js递归,无限分级树形折叠菜单
  • PHP变量
  • scrapy学习之路4(itemloder的使用)
  • 两列自适应布局方案整理
  • 聊一聊前端的监控
  • 前端每日实战 2018 年 7 月份项目汇总(共 29 个项目)
  • 区块链分支循环
  • 学习JavaScript数据结构与算法 — 树
  • 回归生活:清理微信公众号
  • 如何通过报表单元格右键控制报表跳转到不同链接地址 ...
  • ​【经验分享】微机原理、指令判断、判断指令是否正确判断指令是否正确​
  • (1)(1.8) MSP(MultiWii 串行协议)(4.1 版)
  • (libusb) usb口自动刷新
  • (八)c52学习之旅-中断实验
  • (附源码)ssm捐赠救助系统 毕业设计 060945
  • (力扣)循环队列的实现与详解(C语言)
  • (十二)Flink Table API
  • (贪心 + 双指针) LeetCode 455. 分发饼干
  • .NET 4.0中的泛型协变和反变
  • .NET CLR Hosting 简介
  • .Net Core 微服务之Consul(二)-集群搭建
  • .net6 webapi log4net完整配置使用流程
  • .Net的DataSet直接与SQL2005交互
  • .NET企业级应用架构设计系列之结尾篇
  • /dev/VolGroup00/LogVol00:unexpected inconsistency;run fsck manually
  • @ConditionalOnProperty注解使用说明
  • @软考考生,这份软考高分攻略你须知道
  • [8-23]知识梳理:文件系统、Bash基础特性、目录管理、文件管理、文本查看编辑处理...
  • [Algorithm][综合训练][kotori和n皇后][取金币][矩阵转置]详细讲解
  • [BUG] Hadoop-3.3.4集群yarn管理页面子队列不显示任务
  • [C#]使用OpenCvSharp图像滤波中值滤波均值滤波高通滤波双边滤波锐化滤波自定义滤波
  • [EFI]DELL XPS13 9360电脑 Hackintosh 黑苹果efi引导文件
  • [Hadoop in China 2011] 蒋建平:探秘基于Hadoop的华为共有云
  • [hihocoder1395] 最大权闭合子图
  • [iOS]随机生成UUID通用唯一识别码