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

网站开发后台指什么商务网站建设定义

网站开发后台指什么,商务网站建设定义,网站建设好还需要续费吗,网站怎样做谷歌推广谨记: 数组不是单调的话,不要用滑动窗口,考虑用前缀和 写法一:两次遍历 代码的核心思想是通过 前缀和 和 哈希表 来高效地统计符合条件的子数组个数。具体步骤如下: 计算前缀和数组 s: s[i] 表示 nums 的前…

谨记: 数组不是单调的话,不要用滑动窗口,考虑用前缀和

写法一:两次遍历

代码的核心思想是通过 前缀和 和 哈希表 来高效地统计符合条件的子数组个数。具体步骤如下:

  1. 计算前缀和数组 s

    • s[i] 表示 nums 的前 i 个元素的和。
    • s[0] = 0,表示前 0 个元素的和为 0。
    • 例如,nums = [1, 1, 1],则 s = [0, 1, 2, 3]
  2. 使用 defaultdict 记录前缀和出现的次数

    • defaultdict(int) 是一个字典,默认值为 0。如果访问一个不存在的键,会返回 0,而不是抛出异常。
    • cnt[sj] 表示前缀和 sj 出现的次数。
  3. 遍历前缀和数组 s,统计符合条件的子数组个数

    • 对于每个前缀和 sj,检查是否存在前缀和 sj - k
      • 如果存在,则说明从某个位置到当前位置的子数组和为 k
      • 将 cnt[sj - k] 的值加到 ans 中。
    • 将当前前缀和 sj 记录到 cnt 中。
from collections import defaultdictclass Solution(object):def subarraySum(self, nums, k):""":type nums: List[int]:type k: int:rtype: int"""# 1. 计算前缀和数组 ss = [0] * (len(nums) + 1)  # s[0] = 0,表示前 0 个元素的和为 0for i, x in enumerate(nums):s[i + 1] = s[i] + x  # s[i+1] = s[i] + nums[i]# 2. 初始化结果和哈希表ans = 0  # 记录符合条件的子数组个数cnt = defaultdict(int)  # 哈希表,记录前缀和出现的次数# 3. 遍历前缀和数组,统计符合条件的子数组个数for sj in s:# 如果存在 s[i] = sj - k,则说明从 i+1 到 j 的子数组和为 kans += cnt[sj - k]# 将当前前缀和 sj 记录到哈希表中cnt[sj] += 1return ans  # 返回结果

写法二:一次遍历

  • 前缀和:使用变量 s 动态计算当前的前缀和。
  • 哈希表:使用哈希表 cnt 记录前缀和出现的次数。
  • 核心思想:对于当前前缀和 s,检查是否存在前缀和 s - k。如果存在,则说明从某个位置到当前位置的子数组和为 k

核心逻辑

  1. 更新前缀和
    • s += x:将当前元素 x 加到前缀和 s 中。
  2. 检查是否存在 s - k
    • 如果 cnt[s - k] 存在,则说明从某个位置到当前位置的子数组和为 k
    • 将 cnt[s - k] 的值加到 ans 中。
  3. 记录当前前缀和
    • cnt[s] += 1:将当前前缀和 s 记录到哈希表中。
from collections import defaultdictclass Solution(object):def subarraySum(self, nums, k):""":type nums: List[int]:type k: int:rtype: int"""ans = s = 0  # ans 记录结果,s 记录当前前缀和cnt = defaultdict(int)  # 哈希表,记录前缀和出现的次数cnt[0] = 1  # 初始化,s[0]=0 出现了一次# 遍历数组,动态计算前缀和for x in nums:s += x  # 更新当前前缀和# 如果存在 s - k,则说明从某个位置到当前位置的子数组和为 kans += cnt[s - k]# 将当前前缀和 s 记录到哈希表中cnt[s] += 1return ans  # 返回结果
http://www.dtcms.com/a/439387.html

相关文章:

  • 合肥思讯网站建设广东建设项目备案公示网站
  • jquery win8风格企业网站模板宁波seo推广方式排名
  • [光学原理与应用-478]:国内研发用于无图形检测和有图形晶圆检测的皮秒紫外和深紫外激光光源的公司与关键技术
  • 动规:两个数组dp系列
  • 基本定时器的寄存器介绍及案例实践
  • pyhton基础【31】装饰器
  • 陕西网站建设价格网站死链
  • JDK21新特性全解析:重塑Java开发体验的五大突破
  • 合肥企业网站建设工access数据库网站
  • cuda版本和torch版本要对应才能使用
  • 如何解决顽固的盘符修改失败问题
  • Qwen3-Omni
  • 【C语言数据结构】第2章:线性表(1)--定义ADT
  • 做英文网站有用吗wordpress过滤html标签了
  • 瑞幸麦当劳代下单项目
  • 公司做网站找谁公司做网站找谁微信网站与响应式网站
  • ubuntu系统引导重置
  • 2017做电商做什么网站金华市建设局网站职称
  • 模糊视频图像如何处理?
  • 做外汇网站卖判刑多少年做图表的网站
  • 家具网站开发目的wordpress 父页面跳转
  • 江门免费模板建站o2o网站设计方案
  • 快速开发项目软件:一套可以企业级部署的激光切割系统上位机软件
  • 文案交流网站儿童网站 源码
  • 【Docker】基于Ubuntu的Docker的日常使用方法
  • 网站建设考核网站制作策划建设大纲
  • 建网站软件下载西部中大建设集团网站
  • 外贸网站外链网上哪里有卖嗅探器
  • 携程网的网站推广方式提升排名
  • Day02_刷题niuke20251003