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

云游戏网站在线玩诺德中心做网站

云游戏网站在线玩,诺德中心做网站,做网站直接从网上的icon吗,求个网站知乎1、刷题慢慢积累起来以后#xff0c;遇到相似的题目时#xff0c;会出现算法思路混淆了 2、这两道题都是对连续子数组加和进行考察#xff0c;细节区别在于数组元素在209. 长度最小的子数组为正整数#xff08;窗口增加元素递增#xff0c;减少元素递减#xff09;#… 1、刷题慢慢积累起来以后遇到相似的题目时会出现算法思路混淆了 2、这两道题都是对连续子数组加和进行考察细节区别在于数组元素在209. 长度最小的子数组为正整数窗口增加元素递增减少元素递减在560. 和为K的子数组为整数 3、209. 长度最小的子数组采用滑动窗口的算法560. 和为K的子数组采用前缀和哈希表的算法 209. 长度最小的子数组 1、有点像leetcode分类刷题基于数组的双指针一、基于元素移除的O(1)类型中的快慢指针快指针遍历数组元素慢指针在满足一定条件时更新。 2、同时要注意 基本子数组类型 更新窗口左边界时用while循环 from typing import List209. 长度最小的子数组 题目描述给定一个含有n个正整数的数组和一个正整数target。 找出该数组中满足其和 ≥target的 长度最小的 连续子数组[numsl, numsl1, ..., numsr-1, numsr] 并返回其长度。 如果不存在符合条件的子数组返回 0 。 示例 1:输入target 7, nums [2,3,1,2,4,3]输出2解释子数组 [4,3] 是该条件下的长度最小的子数组 题眼≥target的 长度最小的 连续子数组 注意因为这道题保证了数组中每个元素都为正所以窗口增加元素递增减少元素递减 思路滑动窗口双指针的特殊形式设置窗口左右边界[left, right]初始值均为0右边界遍历数组满足条件后while循环更新左边界 关键在于思考清楚窗口的左右边界如何更新和基于数组的双指针的题目同理 总结这个题的思路怎么想到双指针呢首先数组必然要遍历需要一个指针另外要去寻找满足条件的子数组必然再需要另一个和基于数组的双指针的题目同理 class Solution:def minSubArrayLen(self, target: int, nums: List[int]) - int:left, right 0, 0s 0result len(nums) 1 # 取一个大于数组长度的值for right in range(len(nums)):# 1、当移动right扩大窗口进行哪些操作s nums[right]# 2、什么条件下窗口应该暂停扩大开始移动left缩小窗口while s target:# 3、缩小窗口进行哪些操作# 4、更新结果result min(result, right - left 1) # 滑窗[left, right]是左闭右闭区间子数组长度元素个数s - nums[left]left 1right 1if result ! len(nums) 1: # 不存在符合条件的子数组所有元素加起来都小于targetreturn resultreturn 0if __name__ __main__:obj Solution()while True:try:in_line input().strip().split()target int(in_line[1].split(,)[0].strip())nums [int(n) for n in in_line[2].split(])[0].split([)[1].split(,)]print(obj.minSubArrayLen(target, nums))except EOFError:break560. 和为 K 的子数组 1、通过题眼连续子数组来判断该题很像是滑动窗口的解法但数组元素为整数不是正整数不满足滑窗右边界增大元素之和递增、左指针增大元素之和递减 了 2、要用前缀和按照闭区间形式当前索引位置的值也算进去好理解哈希表的思路 3、通过这道题也认识到如果“1. 两数之和”不是限定了样例只存在一个答案其哈希表更新的逻辑有缺陷 from typing import List560. 和为 K 的子数组 题目描述给你一个整数数组 nums 和一个整数 k 请你统计并返回 该数组中和为 k 的连续子数组的个数 。 示例 1:输入nums [1,1,1], k 2输出2 题眼连续子数组很像是滑动窗口的解法但数组元素为整数不是正整数不满足滑窗右边界增大元素之和递增、左指针增大元素之和递减 了 思路无法用滑动窗口了要用前缀和按照闭区间形式当前索引位置的值也算进去好理解哈希表的思路 “1. 两数之和”的扩展通过这道题也认识到如果“1. 两数之和”不是限定了样例只存在一个答案其哈希表更新的逻辑有缺陷 class Solution:def subarraySum(self, nums: List[int], k: int) - int:result 0hashTable {0: 1} # 这里保证了对 包含起始元素的连续子数组 的判断prefixSum 0for n in nums: # 查找 以当前遍历元素n对应的索引位置为 右边界的连续子数组prefixSum n # 前缀和按照闭区间形式当前索引位置的值也算进去好理解# 1、先找 以当前遍历元素n对应的索引位置 之前的前缀和是否存在满足条件的if prefixSum - k in hashTable:result hashTable[prefixSum - k]# 2、再将当前遍历元素n对应的索引位置 的前缀和添加到hashDictif prefixSum not in hashTable:hashTable[prefixSum] 1else:hashTable[prefixSum] 1return resultif __name__ __main__:obj Solution()while True:try:in_line input().strip().split()nums [int(n) for n in in_line[1].split([)[1].split(])[0].split(,)]k int(in_line[2].strip())print(obj.subarraySum(nums, k))except EOFError:break
http://www.zqtcl.cn/news/82731/

相关文章:

  • 全球最大的设计网站申请域名 建设网站
  • 宁夏网站开发北京网站建站系统平台
  • 哪些域名商可以自助wordpress深圳网站优化费用
  • 中职高一网站建设试题个人定做衣服店
  • 服务器与网站吗dedecms医院网站
  • 新手学做网站看什么书网站临时会话
  • 芷江建设工程招投标网站昆明网站seo多少钱
  • 做网站简历怎么写火车头wordpress 5.1发布模块
  • 建站知乎网站qq安全认证
  • 广州 建网站纹身网站设计
  • 医院网站建设案例网站怎么建设微信支付宝支付功能
  • 成都网站优化平台品牌网站建设有什么作用
  • 做宣传网站大概多少钱成都网站建设优化推
  • 团购网站单页模板中铁招标在哪个平台
  • 公司做网站的好处如何对网站做渗透
  • 网站tdk优化晋城市城乡建设局网站
  • 学校网站模板html商城网站建设招聘
  • 广州市白云区建设局网站免费软件库
  • 网络营销方法分析超级seo外链工具
  • 网站优化外包费用深圳排名seo公司
  • 标准网站优势商业网站首页怎么做
  • 景宁县建设局网站做短袖的网站
  • 网站要实名认证常熟做网站公司排名
  • 交互式手机网站现代化公司网站建设
  • 鄂州北京网站建设广东官网网站建设品牌
  • 东莞网站建设报价推广平台赚佣金
  • 丰浩网站建设中心什么是商务网站
  • 做品牌设计网站名片式网站模板
  • 网站外链 快速建设淘宝客建网站
  • 如何建设网络营销网站做门户网站赚钱吗