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

这么做网站原型图中山 网站建设一条龙

这么做网站原型图,中山 网站建设一条龙,手机网页链接制作,如何提高网站加载速度慢大家好我是苏麟 , 今天带来一道小题 . 滑动窗口最大值 描述 : 给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。 返回 滑动窗口中的最大值 。 题目 : …

大家好我是苏麟 , 今天带来一道小题 .

滑动窗口最大值

描述 :

给你一个整数数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的 k 个数字。滑动窗口每次只向右移动一位。

返回 滑动窗口中的最大值 

题目 :

LeetCode 239.滑动窗口最大值 :

239. 滑动窗口最大值

分析 :

这种方法我们在基础算法的堆部分介绍过。对于最大值、K个最大这种场景,优先队列(堆)是首先应该考虑的思路。大根堆可以帮助我们实时维护一系列元素中的最大值。


本题初始时,我们将数组 nums 的前 k个元素放入优先队列中。每当我们向右移动窗口时,我们就可以把一个新的元素放入优先队列中,此时堆顶的元素就是堆中所有元素的最大值。然而这个最大值可能并不在滑动窗口中,在这种情况下,这个值在数组 nums 中的位置出现在滑动窗口左边界的左侧。因此,当我们后续继续向右移动窗口时,这个值就永远不可能出现在滑动窗口中了,我们可以将其永久地从优先队列中移除。

我们不断地移除堆顶的元素,直到其确实出现在滑动窗口中。此时,堆顶元素就是滑动窗口中的最大值。为了方便判断堆顶元素与滑动窗口的位置关系,我们可以在优先队列中存储二元组(numindex),表示元素num 在数组中的下标为index。

解析 :

class Solution {public int[] maxSlidingWindow(int[] nums, int k) {int n = nums.length;PriorityQueue<int[]> pq = new PriorityQueue<>(new Comparator<int[]>(){public int compare(int[] a,int[] b){return a[0] != b[0] ? b[0] - a[0] : b[1] - a[1];}});for(int i = 0;i< k; i++){pq.offer(new int[]{nums[i],i});}int[] arr = new int[n - k + 1];arr[0] = pq.peek()[0];for(int i= k;i < n;i++){pq.offer(new int[]{nums[i],i});while(pq.peek()[1] <= i - k){pq.poll();}arr[i - k + 1] = pq.peek()[0];}return arr;}
}

这期就到这里 , 下期见!

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

相关文章:

  • 免费大型网站个人网站怎么做收款链接
  • 做妇产科网站中铁建设集团有限公司招聘官网
  • 百度关键词推广网站在家做兼职官方网站平台
  • 深圳外贸网站建设哪家好福建住房和城建设网站
  • 韩城市住房和城乡建设局网站韩国优秀网站
  • 海尔网站的建设目标做的视频传到哪个网站好
  • 网站栏目类型泊头网站建设价格
  • 新沂做网站主页面设计图片
  • 网站使用功能介绍是用什么软件做的做国外网站的零售
  • 可以免费做中考题的网站wordpress pinterest
  • 哪个网站做新加坡劳务比较好的wordpress 版本 php7
  • 在线视频网站建设长沙口碑好网站建设
  • 全国公路建设信用网站洛阳软件开发公司有哪些
  • 网站推广怎么做的wordpress弹出式广告
  • 网站设计与网站建设书店网站建设与维护下载
  • 旅行网站开发印刷网站源码
  • 线上推广计划网站建立好了自己怎么做优化
  • 中国室内设计联盟网站重庆网站平台如何推广
  • 免费推广软件哪个好岳阳seo招聘
  • 网站建设征求意见稿什么平台可以做推广
  • php 网站后台管理系统营销型网站功能
  • 网站建设合同 模板深圳网站建设公司 概况
  • 电子商务平台起名小红书seo是什么意思
  • 怎么样做网站视频品牌建设方案和思路
  • 浙江网站建设专家评价视频网站开发项目
  • 网站域名备案查询官网seo整站优化方案
  • 怎么做科技小制作视频网站邯郸市出租房屋信息网
  • 网站建设实质网站制作公司有没有版权
  • 创业项目的网站大网站前端怎么做的
  • 上海企业网站制作多少钱seo方案怎么做