栈和队列之生成窗口最大值数组
package com.chenyu.zuo.stackAndQueue;import java.util.LinkedList;/*** 题目:有一个整形数组,arr和一个大小为w的窗口从数组的最左边滑到最右边,窗口每次向右滑动一个位置。* 例如数组[4,3,5,4,3,3,6,7],窗口的大小为3时;* [4 3 5] 4 3 3 6 7 窗口中最大值为5* 4[ 3 5 4] 3 3 6 7 窗口中最大值为5* 4 3 [5 4 3] 3 6 7 窗口中最大值为5* 4 3 5 [4 3 3 ]6 7 窗口中最大值为4* 4 3 5 4 [3 3 6] 7 窗口中最大值为6* 4 3 5 4 3 [3 6 7 ] 窗口中最大值为7* 如果数组的长度为n,窗口大小为w,则一共产生n-w+1个窗口的最大值* 请实现一个函数 * 输入:整数数组为arr,窗口大写为W。* 输出:一个长度为n-w+1的数组res,res[i]表示每一种窗口状态下的最大值,以本题为例,结果应该返回{5,5,5,4,6,7}*/
public class GetMaxWindow {public static void main(String[] args) {int [] arr1={4,3,5,4,3,3,6,7};int w=3;GetMaxWindow window=new GetMaxWindow();arr1=window.getMaxWindow1(arr1, w);for(int a:arr1){System.out.println(a);}System.out.println("---------------------------------------");i
栈和队列之生成窗口最大值数组相关推荐
- 左神算法:生成窗口最大值数组(Java版)
本题来自左神<程序员面试代码指南>"生成窗口最大值数组"题目. 题目 有一个整型数组 arr 和一个大小为 w 的窗口从数组的最左边滑到最右边,窗口每次向右边滑一个位置 ...
- 栈与队列6——生成最大窗口值数组
题目 一个整形数组arr,一个大小为w的窗口从数组左边向右边滑动,一次滑动步长为1 举例,数组[4,3,5,4,3,3,6,7],窗口大小为3时: 如果数组长度为n,窗口大小为w,则一共会产生n-w+ ...
- 环形数组队列求滑动窗口最大值
给定一个数组 nums,有一个大小为 k 的滑动窗口从数组的最左侧移动到数组的最右侧.你只可以看到在滑动窗口内的 k 个数字.滑动窗口每次只向右移动一位.返回滑动窗口中的最大值. 示例: 输入: nu ...
- 栈与队列9——最大值减去最小值小于或等于num的子数组的数量
题目 给定数组arr和整数num,共返回有多少个子数组满足如下情况: max(arr[i..j])-min(arr[i..j])<=num max表示子数组arr[i..j]中的最大值,min表 ...
- 栈和队列---最大值减去最小值小于或等于num的子数组数量
[题目] 给定数组arr和整数num,共返回有多少个子数组满足如下情况:子数组中的最大值减去最小值小于或等于num. 要求,时间复杂度O(N). [基本思路] 首先明确两点: 1.如果子数组arr[i ...
- 栈和队列---算法题目
1.设计一个有getMin功能的栈 1.解题思路 方案一: push:将每次插入的新值和stackMin的栈顶元素比较,如果新值较小就插入到stackMin,否则什么也不干 pop:stackData ...
- 代码随想录算法训练营Day12 栈与队列
#代码随想录算法训练营 代码随想录算法训练营Day12 栈与队列| 239. 滑动窗口最大值 347.前 K 个高频元素 总结 239. 滑动窗口最大值 给定一个数组 nums,有一个大小为 k 的滑 ...
- leetcode 239. Sliding Window Maximum | 239. 滑动窗口最大值(单调栈,窗口内最大最小值更新结构)
题目 https://leetcode.com/problems/sliding-window-maximum/ 题解 窗口内最大最小值更新结构,单调栈问题,左神视频讲过,<程序员算法面试指南& ...
- JavaScript数据结构与算法(1)(数组、栈、队列、链表)(ES6)
注意:原教学视频:JavaScript(ES6)数据结构和算法 | JavaScript数据结构与算法 (都是CoderWhy老师的教学) 原作者(笔记)链接:JavaScript 数据结构与算法 | ...
最新文章
- intellij idea 生成可执行jar 运行提示没有主清单属性
- html页面内容改变,但是网页内容不变
- IOS Masonry自动布局
- 分享--关于学习的一些事儿
- 天底下最大的“骗子”——年龄
- 删除vss文件批处理
- mysql查询结果导出excel_Mysql查询结果导出为Excel的几种方法
- 在移动互联网上赚钱,行不行
- 标记 (TAG) 您的 k8s 集群资源
- 课程设计哈夫曼编/译码系统
- 管理信息系统开发项目管理之一(转)
- SQL存储过程和函数区别(超级简单,人人都可以看懂)
- http状态404 vscode_HTTP状态码(HTTP Status Code),常见的error 404, error 504等的意思
- SylixOS移植常见问题——编译过多文件导致报错
- math sub Java_java初学减法运算
- CAD云线怎么画?CAD云线绘制技巧
- 使用gitbook发布文章生成网站(一)
- css和php区别,「php」css与html的区别是什么?css与html区别比照
- 组策略应用—屏幕保护我做主
- LintCode 题解 |亚马逊、微软热门题:目的地的最短路径
热门文章
- WPF实现仪表盘(刻度跟随)
- C# 接口(Interface)
- 11座城市,58个.NET最新岗位速览,内推直通面试官!
- api接口返回动态的json格式?我太难了,尝试一下 linq to json
- Webapi管理和性能测试工具WebBenchmark
- 探讨NET Core数据进行3DES加密或解密弱密钥问题
- 除了HTML、CSS与JS,现在WASM也是标准Web语言
- 自由源自于自律 及其他三则分享
- .Net Core2.1 秒杀项目一步步实现CI/CD(Centos7)系列二:k8s高可用集群搭建总结以及部署API到k8s...
- .NetCore 2.1以后的HttpClient最佳实践