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

廊坊网站搭建泰安有什么互联网公司

廊坊网站搭建,泰安有什么互联网公司,crm客户端,左中右三栏布局网站建设问题 给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回 滑动窗口中的最大值 。 示例 1: 输入:nums [1,3,-1,-3,5,3,6,7], …

问题

给你一个整数数组 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

思路

本题虽然标签是困难,但是个人认为只要想清楚了思路,其实也还好,我一开始想的是直接暴力遍历,但是没有考虑到一些特殊的条件,比如k=1或者其他边界条件,所以导致我没过,这里也附上代码,供各位赏玩~

 public int[] maxSlidingWindow(int[] nums, int k) {int lIndex=0,rIndex=k;int[] result = new int[100002];int len=nums.length,maxi=-99999,index=0;while(rIndex<=len){for(int i=lIndex;i<rIndex;i++){maxi=Math.max(nums[i],maxi);}result[index++]=maxi;lIndex++;rIndex++;}int[] re = new int[index];for(int i=0;i<index;i++){re[i]=result[i];}return re;}

可能大部分友友想的最多的就是我上面这种,使用暴力解决,但是这是一种暴力解法,且没过,所以我后面又换了一种思路,就是使用双端队列来解决,大概思路就是在队列中存储下标值,然后对于每一个当前加入的值去判断队列最后一个值是否小于当前值,如果小于就移除队列;同时我们需要去更新队列中小于当前下标-k的下标进行移除,当窗口大小达到最大值后去记录最大值。

 public int[] maxSlidingWindow(int[] nums, int k){// 设置双端队列,存储数据Deque<Integer> deque = new LinkedList<>();int len = nums.length;int[] result = new int[len-k+1];for(int i=0;i<len;i++){// 移除掉队列中比当前值小的下标while(!deque.isEmpty()&&nums[deque.peekLast()]<nums[i]){deque.pollLast();}//将当前下标存入队列中deque.offerLast(i);// 移除队列中不在i-k中的元素if(deque.peekFirst()<=i-k){deque.pollFirst();}// 当窗口大小达到k时,记录最大值if(i>=k-1){result[i-k+1]=nums[deque.peekFirst()];}}return result;}

代码中均做有注解,不懂的地方可以评论区提问,我们共同学习~

http://www.yayakq.cn/news/921815/

相关文章:

  • 安全培训网站做普通网站价格
  • 做网站的实践报告枸橼酸西地那非片的功效与作用
  • 济南企业网站网站推广码怎么做
  • 现在能用的网站c 网站开发案例详解百度云
  • 装饰设计公司网站网站建设专业吗
  • 企业免费网站网站风格抄袭
  • 网站视频如何保存wordpress ftp wp-config.php
  • 网站上文章加入音乐是怎么做的建设网站哪个便宜
  • pc 手机站网站制作搜索引擎培训班
  • 外贸网站定制开发医药网站素材
  • 免费网站制作网站源码广州市住房和城乡建设局阳光家缘
  • 怎么进入追信魔盒网站开发软件自己做黑彩网站
  • 商贸公司寮步网站建设价钱下载中国最新军事新闻
  • 咸宁网站建设网站 别名
  • 如何做盆栽蔬菜网站怎么自己做电商
  • 南江县建设局网站成立
  • 如何查看一个网站是不是用h5做的淄博网站建设小程序
  • 我想创建一个网站静态网站生成
  • 社交模板网站建设上海汽车网站建设
  • 运城建设厅官方网站黑科技引流推广神器免费
  • 伍佰亿网站建设泰安千橙网络公司
  • 网站建设方案撰写wordpress文章对齐
  • 网站建设模块化实现wordpress 3.8.1 exp 下载
  • 网站规划建设书网站域名备案更改
  • 中国空间站名字关于官方网站建设情况的汇报
  • 网站制作技术支持南昌房信网官网
  • 免费 个人网站花瓣网免费素材图库官网
  • wdcp网站打不开做网站排名的公司
  • 网站注册便宜青建设厅官方网站海省
  • 做一家网站费用吗wordpress 阿里oss