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

做网站百度关键排名工信和信息化网站备案系统

做网站百度关键排名,工信和信息化网站备案系统,qq邮件网站建设的模块,网站开发实训要求原题链接#x1f517;#xff1a;滑动窗口最大值 难度#xff1a;困难⭐️⭐️⭐️ 题目 给你一个整数数组 nums#xff0c;有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回 滑动…原题链接滑动窗口最大值 难度困难⭐️⭐️⭐️ 题目 给你一个整数数组 nums有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回 滑动窗口中的最大值 。 示例 1 输入nums [1,3,-1,-3,5,3,6,7], k 3 输出[3,3,5,5,6,7] 解释 滑动窗口的位置 最大值 --------------- ----- [1 3 -1] -3 5 3 6 7 31 [3 -1 -3] 5 3 6 7 31 3 [-1 -3 5] 3 6 7 51 3 -1 [-3 5 3] 6 7 51 3 -1 -3 [5 3 6] 7 61 3 -1 -3 5 [3 6 7] 7示例 2 输入nums [1], k 1 输出[1] 提示 1 nums.length 105 -104 nums[i] 104 1 k nums.length 题解 双端队列deque法 题解 初始化创建一个双端队列 deque 来存储窗口内元素的索引。同时创建一个数组 result 来存储窗口的最大值。 遍历数组遍历整数数组 nums对于每个索引 i 维护队列确保队列 deque 的尾部始终是当前窗口内的最大值的索引。这意味着如果队列非空且队列尾部的元素值小于当前元素 nums[i]则从队列尾部移除元素直到队列尾部的元素值大于或等于当前元素或者队列为空。添加索引将当前索引 i 添加到队列尾部。 处理窗口滑动 当索引 i 大于或等于 k 时意味着窗口已经滑动了至少 k 次此时可以确定窗口内的最大值。如果队列头部的索引 deque.front() 等于 i - k这意味着队列头部的元素已经不在当前窗口内因此应该从队列头部移除它。 收集结果将队列头部元素对应的 nums 值添加到结果数组 result 中。 返回结果遍历结束后返回结果数组 result。 复杂度时间复杂度是 O(n)其中 n 是数组 nums 的长度因为每个元素最多被入队和出队一次。空间复杂度是 O(k)因为队列最多包含窗口大小 k 个元素的索引。代码过程 初始化一个双端队列 dq 和一个结果数组 result。遍历数组 nums 中的每个元素。对于每个元素从队列尾部移除所有小于当前元素的索引因为这些索引对应的元素不可能是窗口中的最大值。将当前元素的索引入队。如果队列的长度超过了窗口大小 k则移除队列头部的元素因为它已经不在窗口范围内。当窗口滑动了 k 次之后队列的第一个元素的值就是当前窗口的最大值将其添加到结果数组中。 c demo #include iostream #include vector #include deque using namespace std;class Solution { public:vectorint maxSlidingWindow(vectorint nums, int k) {vectorint result;dequeint dq;for (int i 0; i nums.size(); i) {// 移除所有小于当前元素的索引while (!dq.empty() nums[dq.back()] nums[i]) {dq.pop_back();}// 将当前索引入队dq.push_back(i);// 如果队列长度大于窗口大小移除窗口左侧的元素if (dq.front() i - k) {dq.pop_front();}// 当窗口滑动 k 次后队列的第一个元素就是窗口中的最大值if (i k - 1) {result.push_back(nums[dq.front()]);}}return result;} };int main() {Solution solution;vectorint nums { 1,3,-1,-3,5,3,6,7 };int k 3;vectorint max_values solution.maxSlidingWindow(nums, k);cout Maximum values in the sliding window of size k : ;for (int max_val : max_values) {cout max_val ;}cout endl;return 0; }输出结果 Maximum values in the sliding window of size 3: 3 3 5 5 6 7
http://www.tj-hxxt.cn/news/137380.html

相关文章:

  • 网站建设的市场需求关键词在线挖掘网站
  • 怎样做网站制作团队做公司网站需要几天
  • 长安网站建设定制注册工程公司名称大全
  • 合肥企业网站建设辽宁建设工程信息网中标结果公示几天
  • 学做网站网涂料网站建设
  • skype在网站上怎么做链接网站设计报价方案
  • 传奇官方网站唐山网站建设开发设计公司
  • 重庆便宜网站建设网站备案帐号找回密码
  • 网站的点击率网站图片移动怎么做
  • 企业手机网站建聊天软件是怎么开发的
  • 免费建一个自己的网站青州网站网站建设
  • 视频解析网站建设购买网站域名
  • 企业网站建设的原则是中国企业公示信息网
  • 国外比较有名的设计工作室网站东莞已出现病例
  • wordpress 仿站最新的网站建设软件
  • Wordpress源码下载站主题资源网站建设反思
  • 怎么看网站是否织梦wordpress底部栏如何编辑
  • 电子商务 网站开发流量很大的网站
  • 手机网站是用什么开发的设计网站专业
  • 怎样才能在百度上搜到自己的网站湖北省建设主管部门网站
  • 烟台做网站建设电话快站科技是什么
  • 江苏省职业建设注册管理中心网站找装修
  • 网站推广公司认准乐云seo网站域名有什么用
  • 高端网站制作费用syntaxhighlighter wordpress使用
  • 四川省建设厅的注册中心网站首页网站快照明天更新是什么情况
  • 普陀网站制作网络推广平台几大类
  • 手机网站如何做郑州一建集团工程建设有限公司网站
  • 建网站基础需要学什么亳州电商网站建设
  • 网站假设教程软件下载网站开发
  • 江门市网站开发怎么注销自己名下的公司