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

清远市网站建设_网站建设公司_数据备份_seo优化

淘宝实时优惠券网站怎么做的,网站怎么做镜像,企业网站建设制作的域名费用,网站制作切片关于滑动窗口的概念#xff0c;请自行到网上搜索相关资料#xff0c;了解清楚再看本博客。 一、子组数最大平均数 LeetCode 第643题#xff1a;https://leetcode.cn/problems/maximum-average-subarray-i/ 给你一个由 n 个元素组成的整数数组 nums 和一个整数 k 。 请你…关于滑动窗口的概念请自行到网上搜索相关资料了解清楚再看本博客。  一、子组数最大平均数 LeetCode 第643题https://leetcode.cn/problems/maximum-average-subarray-i/ 给你一个由 n 个元素组成的整数数组 nums 和一个整数 k 。 请你找出平均数最大且 长度为 k 的连续子数组并输出该最大平均数。 任何误差小于 10-5 的答案都将被视为正确答案。 输入nums [1,12,-5,-6,50,3], k 4 输出12.75 解释最大平均数 (12-5-650)/4 51/4 12.75 class Solution:def findMaxAverage(self, nums: List[int], k: int) - float:# Step 1# 定义需要维护的变量# 本题求最大平均值 (其实就是求最大和)所以需要定义sum_, 同时定义一个max_avg (初始值为负无穷)sum_, max_avg 0, -math.inf# Step 2: 定义窗口的首尾端 (start, end) 然后滑动窗口start 0for end in range(len(nums)):# Step 3: 更新需要维护的变量 (sum_, max_avg), 不断把当前值积累到sum_上sum_ nums[end]if end - start 1 k:max_avg max(max_avg, sum_ / k)# Step 4# 根据题意可知窗口长度固定所以用if# 窗口首指针前移一个单位保证窗口长度固定, 同时提前更新需要维护的变量 (sum_)if end k - 1:sum_ - nums[start]start 1# Step 5: 返回答案return max_avg二、至多包含两个不同字符的最长子串 LeetCode 第159题https://leetcode.cn/problems/longest-substring-with-at-most-two-distinct-characters/  class Solution:def lengthOfLongestSubstringTwoDistinct(self, s: str) - int:# Step 1: # 定义需要维护的变量, 本题求最大长度所以需要定义max_len,# 该题又涉及计算不重复元素个数因此还需要一个哈希表max_len, hashmap 0, {}# Step 2: 定义窗口的首尾端 (start, end) 然后滑动窗口start 0for end in range(len(s)):# Step 3# 更新需要维护的变量 (max_len, hashmap)# 首先把当前元素的计数加一# 一旦哈希表长度小于等于2(之多包含2个不同元素)尝试更新最大长度tail s[end]hashmap[tail] hashmap.get(tail, 0) 1if len(hashmap) 2:max_len max(max_len, end - start 1)# Step 4: # 根据题意, 题目的窗口长度可变: 这个时候一般涉及到窗口是否合法的问题# 这时要用一个while去不断移动窗口左指针, 从而剔除非法元素直到窗口再次合法# 哈希表长度大于2的时候 (说明存在至少3个重复元素)窗口不合法# 所以需要不断移动窗口左指针直到窗口再次合法, 同时提前更新需要维护的变量 (hashmap)while len(hashmap) 2:head s[start]hashmap[head] - 1if hashmap[head] 0:del hashmap[head]start 1# Step 5: 返回答案 (最大长度)return max_len三、无重复字符最长字串 LeetCode 第3题https://leetcode.cn/problems/longest-substring-without-repeating-characters/description/ 给定一个字符串 s 请你找出其中不含有重复字符的 最长子串 的长度。 输入: s abcabcbb 输出: 3 解释: 因为无重复字符的最长子串是 abc,所以其长度为 3。 class Solution:def findMaxAverage(self, nums: List[int], k: int) - float:# Step 1# 定义需要维护的变量# 本题求最大平均值 (其实就是求最大和)所以需要定义sum_, 同时定义一个max_avg (初始值为负无穷)sum_, max_avg 0, -math.inf# Step 2: 定义窗口的首尾端 (start, end) 然后滑动窗口start 0for end in range(len(nums)):# Step 3: 更新需要维护的变量 (sum_, max_avg), 不断把当前值积累到sum_上sum_ nums[end]if end - start 1 k:max_avg max(max_avg, sum_ / k)# Step 4# 根据题意可知窗口长度固定所以用if# 窗口首指针前移一个单位保证窗口长度固定, 同时提前更新需要维护的变量 (sum_)if end k - 1:sum_ - nums[start]start 1# Step 5: 返回答案return max_avg
http://www.ihoyoo.com/news/19663.html

相关文章:

  • 灰色风格的网站自己怎么做淘宝客网站吗
  • 做早餐煲汤网站做脚本从网站引流
  • 潍坊地区网站制作摄影作品网站排行榜
  • 梧州网站开发wordpress网站建设中
  • 传智播客 网站开发吉林省吉林市邮政编码
  • 苏州网站怎么做南宁百度网站公司吗
  • 国内外html5网站建设状况上海到北京机票
  • centos7 wordpress网站汕头站扩建工程
  • 网站的结构怎么做公司网站域名续费
  • 手机网站预览专业网站设计 网络服务
  • 做网站需要网络服务器国外优秀的字体设计网站
  • 青岛网站推广途径全国建设项目公示平台
  • 孵化基地网站怎么建设我的小程序在哪里找
  • 手机商城网站免费建站用php做的订票网站
  • 厦门市机场建设招投标网站wordpress写网站教程
  • 环保网站建设开发百度收录排名怎么上去
  • 南昌汉邦网站建设图片做动画网站
  • 网站制作学什么软件版面设计经历了哪几个阶段
  • 如何编写网站建设销售的心得wordpress 更换语言包
  • 建立网站时服务器的基本配置有哪些晋城市新闻
  • 网站建设介绍语失信人信息查询
  • 免费企业网站怎么做宁波网络公司找哪家
  • 固安建站公司济宁做网站大约多少钱
  • 有哪些做拎包入住的网站合肥网站建设
  • 莱芜网站优化排名公司青岛公司的网站设计
  • 网站建设有哪些推广渠道网站宣传片的创意
  • 常见网站性能优化手段山东济南城乡建设厅网站
  • 宁波住房和城乡建设局网站做网站设计师
  • 怎么做可以聊天的网站吗网站建设费可以一次性冲费用吗
  • 做网站要有什么功能ui设计培训多长时间