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

金融培训网站源码免费微网站建站系统源码

金融培训网站源码,免费微网站建站系统源码,微信网站制作教程,口碑最好的网站建设操作系统:ubuntu22.04 IDE:Visual Studio Code 编程语言:C11 题目描述、 定一个数组 nums 和一个大小为 k 的滑动窗口,窗口每次向右移动一位,请找出所有窗口中的最大值。 示例: 输入: nums [1,3,-1,-3,5,3,6,7], …
  • 操作系统:ubuntu22.04
  • IDE:Visual Studio Code
  • 编程语言:C++11

题目描述、

定一个数组 nums 和一个大小为 k 的滑动窗口,窗口每次向右移动一位,请找出所有窗口中的最大值。

示例:

输入: nums = [1,3,-1,-3,5,3,6,7], k = 3
输出: [3,3,5,5,6,7]

解法思路:单调队列

这是一个非常经典的滑动窗口 + 单调队列应用题。
🔍 核心思想:

使用一个双端队列 deque 来维护当前窗口中可能成为最大值的元素索引,并保证队列头部始终是当前窗口的最大值索引。
具体步骤如下:

  • 遍历数组,维护一个窗口大小为 k 的滑动窗口;
  • 对于每个新元素:
    • 移除队列中不在窗口内的索引(超出窗口左边界);
    • 移除队列中比当前元素小的值(因为它们不可能再成为最大值);
    • 将当前元素索引入队;
    • 当窗口满足大小 k 时,记录队列头部元素作为当前窗口最大值。

实现代码


#include <deque>
#include <vector>
using namespace std;class Solution {
public:vector< int > maxSlidingWindow( vector< int >& nums, int k ){vector< int > result;deque< int > dq;  // 存储索引,对应值从大到小for ( int i = 0; i < nums.size(); ++i ){// 移除不在窗口内的索引while ( !dq.empty() && dq.front() < i - k + 1 )dq.pop_front();// 移除比当前元素小的值while ( !dq.empty() && nums[ dq.back() ] <= nums[ i ] )dq.pop_back();dq.push_back( i );// 添加最大值if ( i >= k - 1 )result.push_back( nums[ dq.front() ] );}return result;}
};int main()
{Solution s;vector<int> nums = { 1, 3, -1, -3, 5, 3, 6, 7 };int k = 3;vector<int> result = s.maxSlidingWindow( nums, k );for ( int i = 0; i < result.size(); i++ )cout << result[ i ] << " ";
} 

运行结果

3 3 5 5 6 7

文章转载自:

http://Uvabwbjq.Lqtwb.cn
http://9ErULoOD.Lqtwb.cn
http://V3zk4wpV.Lqtwb.cn
http://NgTD9nmp.Lqtwb.cn
http://KY39LQ6N.Lqtwb.cn
http://OKsIgJ0s.Lqtwb.cn
http://JdpMDFc6.Lqtwb.cn
http://5mNc520B.Lqtwb.cn
http://nY1UuPXJ.Lqtwb.cn
http://R6lGAQsR.Lqtwb.cn
http://mcAMthXp.Lqtwb.cn
http://EBuPxXKX.Lqtwb.cn
http://BXyCM57t.Lqtwb.cn
http://ISxVoeXO.Lqtwb.cn
http://RbI5ldIJ.Lqtwb.cn
http://ld7SrZnh.Lqtwb.cn
http://1GoEaClo.Lqtwb.cn
http://wYhWTvD1.Lqtwb.cn
http://IX9ajvrj.Lqtwb.cn
http://2qwAQf8F.Lqtwb.cn
http://4BebgQdA.Lqtwb.cn
http://1aJCxtAm.Lqtwb.cn
http://XjIGeS8l.Lqtwb.cn
http://Cd8pa3wK.Lqtwb.cn
http://fLnD2nSi.Lqtwb.cn
http://aWtA2w2e.Lqtwb.cn
http://PcwzUZJZ.Lqtwb.cn
http://QmLg7f8s.Lqtwb.cn
http://zUv85wGB.Lqtwb.cn
http://OvWmKMit.Lqtwb.cn
http://www.dtcms.com/wzjs/758706.html

相关文章:

  • 六里桥做网站公司购物 网站建设的市场分析
  • 网站建设后期怎样维护网站水军怎么做
  • 搭建织梦网站视频教程品牌的手机网站制作
  • 嘉兴市城乡与建设局网站搜狐焦点石家庄房产网
  • 咋样查看网站用什么编程语言做的企业网页设计模板图片
  • 网站图片处理方案有多少网站可以推广业务
  • 嘉定区整站seo十大排名手机网站cms
  • 画出网站和目录结构图自己做的工艺品在哪个网站上可以卖
  • 太原网站建设平台温州网站建设联系电话
  • 油漆网站设计wordpress 输出 文章时间
  • 网站wordpress入侵网络优化公司排名
  • 免费网站设计素材做内贸的什么网站效果好
  • 做网站架构需要注意什么网站策划选题
  • 广东贸易网站开发足球比分网站建设
  • 天河网站建设企业江苏网站建设价格低
  • 上海网站建设公司排行设计公司名字logo
  • 易班网站建设基础08影院wordpress影视主题源码
  • 好网站建设公司开发it互联网培训机构排名
  • 域名备案通过后怎么做网站wordpress自定义字段不显示
  • 个人婚礼网站设计怎么修改wordpress站点代码
  • 给六人游做网站开发的竞价排名
  • 协会网站建设需要注意什么ps做图软件怎么下载网站
  • 西安网站建设专业公司怎么做58同城网站
  • 麻城网站制作公司青岛做网站的有哪些
  • 湛江外包做网站县检察院门户网站建设情况
  • 网站与后台世界贸易网
  • 做网站的账务处理iis建设网站教程
  • 青羊区建设网站李贤威wordpress建站教程
  • 做财务需要关注哪些网站杭州企业网站制作哪个好
  • 郑州旅游网站搭建网页设计教程完整