Leetcode 239 Sliding Window Maximum
来源:互联网 发布:js 动态仪表盘 编辑:程序博客网 时间:2024/05/16 17:39
Given an array nums, there is a sliding window of size k which is moving from the very left of the array to the very right. You can only see the k numbers in the window. Each time the sliding window moves right by one position.
For example,
Given nums = [1,3,-1,-3,5,3,6,7]
, and k = 3.
Window position Max--------------- -----[1 3 -1] -3 5 3 6 7 3 1 [3 -1 -3] 5 3 6 7 3 1 3 [-1 -3 5] 3 6 7 5 1 3 -1 [-3 5 3] 6 7 5 1 3 -1 -3 [5 3 6] 7 6 1 3 -1 -3 5 [3 6 7] 7
Therefore, return the max sliding window as [3,3,5,5,6,7]
.
可以用LinkedList来实现
public class Solution { public int[] maxSlidingWindow(int[] nums, int k) { if(nums == null || nums.length == 0) { return new int[0]; } LinkedList<Integer> list = new LinkedList<>();//list里面存index int[] result = new int[nums.length - k + 1]; for(int i = 0; i < nums.length; i ++){ while(!list.isEmpty() && list.peek() < i - k + 1){//把window外面的挪出去 list.poll(); } while(!list.isEmpty() && nums[list.peekLast()] < nums[i]){//把比当前要加的新元素小的挪出去 也就是window里面只留下最大值 list.removeLast(); } list.offerLast(i); if((i + 1) >= k) {//c从i = k-1的地方开始,也就是第一次填满window的地方 result[i + 1 - k] = nums[list.peek()]; } } return result; }}
阅读全文
0 0
- Leetcode 239 Sliding Window Maximum
- leetcode 239: Sliding Window Maximum
- Leetcode #239 Sliding Window Maximum
- LeetCode 239 Sliding Window Maximum
- [leetcode 239]Sliding Window Maximum
- leetcode 239: Sliding Window Maximum
- leetcode 239:Sliding Window Maximum
- Leetcode-239-Sliding Window Maximum
- leetcode - [239] Sliding Window Maximum
- 【LeetCode-239】Sliding Window Maximum
- LeetCode 239: Sliding Window Maximum
- LeetCode[239] Sliding Window Maximum
- Leetcode 239 Sliding Window Maximum
- [Leetcode] #239 Sliding Window Maximum
- leetcode Sliding Window Maximum
- [LeetCode]Sliding Window Maximum
- leetcode - Sliding Window Maximum
- LeetCode - Sliding Window Maximum
- Django1.11.1解决 Forbidden (403) CSRF verification failed. Request aborted.
- PAT 1006. 换个格式输出整数 (15) —— Java
- iptables不完全手册
- 拥塞控制之慢开始和拥塞避免
- Java-按指定顺序执行线程
- Leetcode 239 Sliding Window Maximum
- 排序算法
- 【MongoDB】mongoimport mongoexport
- Powershell调用Excel批量读取指定单元格数据并输出csv结果文件
- 【MongoDB】mongo复制数据库和集合
- win10桌面图标和菜单栏不时的闪烁问题
- ubuntu14.04安装node+grunt
- Activity中的数据传递
- java字符串大小写转化