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

知道网站是wp程序做的如何仿站简答网站内容建设的时候内链重要性

知道网站是wp程序做的如何仿站,简答网站内容建设的时候内链重要性,西双版纳注册公司流程和费用,如何精准引流呢一.定长滑动窗口 【套路】教你解决定长滑窗!适用于所有定长滑窗题目! 模版套路 1.题目描述 1.计算所有长度恰好为 k 的子串中,最多可以包含多少个元音字母 2.找出平均数最大且 长度为 k 的连续子数组,并输出该最大平均数。 3.…

一.定长滑动窗口

【套路】教你解决定长滑窗!适用于所有定长滑窗题目!

模版套路

1.题目描述

1.计算所有长度恰好为 k 的子串中,最多可以包含多少个元音字母
2.找出平均数最大且 长度为 k 的连续子数组,并输出该最大平均数。
3.返回长度为 k 且平均值大于等于 threshold 的子数组数目
4.构建并返回一个长度为 n 的数组 avgs ,其中 avgs[i] 是以下标 i 为中心的子数组的 半径为 k 的子数组平均值 。(长度为2*k+1,更新位置为i-k)

2.套路
三步走:入窗口-更新答案-出窗口

  • 1.入窗口:下标为i的元素进入窗口,更新相关统计量。如果i<k-1,则说明第一个窗口还未出现,重复步骤1.
  • 2.更新答案,一般是更新最大值/最小值
  • 3.出窗口,下标为i-k+1的元素离开窗口,更新相关统计量
    c++:
class Solution {
public:int maxVowels(string s, int k) {int res = 0, cnt = 0;for (int i = 0; i < s.size(); ++i) {// 1.入窗口if (s[i] == 'a' || s[i] == 'e' || s[i] == 'i' || s[i] == 'o' ||s[i] == 'u') {// 更新统计量cnt++;}// 1. 第一个窗口未出现,重复步骤1if (i < k - 1) {continue;}// 2.更新答案res = max(res, cnt);// 3.出窗口if (s[i - k + 1] == 'a' || s[i - k + 1] == 'e' ||s[i - k + 1] == 'i' || s[i - k + 1] == 'o' ||s[i - k + 1] == 'u') {// 更新统计量cnt--;}}return res;}
};

python:

class Solution:def maxVowels(self, s: str, k: int) -> int:res, cnt = 0, 0for i in range(len(s)):# 1.入窗口if s[i] == "a" or s[i] == "e" or s[i] == "i" or s[i] == "o" or s[i] == "u":# 更新统计量cnt += 1# 1.第一个窗口未出现,重复步骤1if i < k - 1:continue# 2.更新答案res = max(res, cnt)# 3.出窗口if (s[i - k + 1] == "a"or s[i - k + 1] == "e"or s[i - k + 1] == "i"or s[i - k + 1] == "o"or s[i - k + 1] == "u"):# 更新统计量cnt -= 1return res
1. 1456.定长子串中元音的最大数目(中等)

1456. 定长子串中元音的最大数目 - 力扣(LeetCode)
同模版套路

2. 643.子数组最大平均数I(简单)
思想

找出平均数最大且 长度为 k 的连续子数组,并输出该最大平均数。
同套路

代码

c++:

class Solution {
public:double findMaxAverage(vector<int>& nums, int k) {double res = -1e5;int sum = 0;for (int i = 0; i < nums.size(); ++i) {sum += nums[i];if (i < k - 1)continue;res = max(res, (double)sum / k);sum -= nums[i - k + 1];}return res;}
};

优化:
循环内只更新res为sum,最终返回结果除以k即可,因为是定长窗口

3. 1343.大小为K且平均值大于等于阈值的子数组数目(中等)

1343. 大小为 K 且平均值大于等于阈值的子数组数目 - 力扣(LeetCode)

思想

返回长度为 k 且平均值大于等于 threshold 的子数组数目。
同套路一样

代码

c++:

class Solution {
public:int numOfSubarrays(vector<int>& arr, int k, int threshold) {int res = 0, sum = 0;for (int i = 0; i < arr.size(); ++i) {sum += arr[i];if (i < k - 1)continue;if (sum >= k * threshold)res++;sum -= arr[i - k + 1];}return res;}
};
4. 2090.半径为k的子数组平均值(中等)

2090. 半径为 k 的子数组平均值 - 力扣(LeetCode)

思想

1.构建并返回一个长度为 n 的数组 avgs ,其中 avgs[i] 是以下标 i 为中心的子数组的 半径为 k 的子数组平均值 。
2.注意:长度为2*k+1,更新位置为i-k

代码

c++:

class Solution {
public:vector<int> getAverages(vector<int>& nums, int k) {int n = nums.size();vector<int> res(n);for (int i = 0; i < n; ++i)res[i] = -1;int len = 2 * k + 1; // 定义一个lenlong long sum = 0;for (int i = 0; i < n; ++i) {sum += (long long)nums[i];if (i < len - 1)continue;res[i - k] = (double)sum / len;sum -= (long long)nums[i - len + 1];}return res;}
};

注意:
sum记得开long long

http://www.dtcms.com/wzjs/560171.html

相关文章:

  • 宝安区做外贸网站的公司网站空间提供商
  • 在服务器网站上做跳转页面跳转页面成都大丰五块石网站建设
  • 网页设计建立站点实验报告外包网站建设价格
  • 代做网站毕业设计在门户网站做产品seo
  • 信阳网站建设制作公司网站如何赚钱
  • 云南省网站备案网站制作零基础学习
  • 茂名网站建设优化wordpress上传音频
  • 专业建设网站制作福州网站开发定制
  • 都江堰网站建设公司小学生做网站步骤
  • ps切片做网站网站开发技术及特点
  • 广西城乡和住房建设厅网站首页长沙网站排名报价
  • 凡科免费建站平台手机wap版
  • 如何查看一个网站做的外链高权重网站出售
  • 28网站制作外贸网站建设入门
  • 建设工程质量监理协会网站电商网站设计说明书
  • 如何安装网站模版网页版游戏排行榜田田田田田田田田
  • cnzz 网站跳出率查询网站八个
  • 网站建成后应该如何推广少儿编程加盟品牌排行榜
  • 学做招投标的网站有哪些建筑公司招聘岗位
  • 商品网站建设实验格式网站建设的程序
  • 湖北省建设主管网站地推公司
  • 网站开发私人培训网站建设南沙
  • 常德网站建设网站优化壹淘购返利网
  • 做类似于彩票的网站犯法吗自己建的网站打不开
  • 本地网站模板修改制作网页和做网站是一个意思吗
  • 手把手教你入侵网站修改数据地板网站模板免费下载
  • 长春网站建设设计公司门户网站制作
  • 淄博网站建设yx718网站哪些付款二维码是怎么做的
  • 平面毕业设计作品网站网站开发人员的岗位有
  • 东坑仿做网站网站外网怎么做