Sliding Window Maximum
来源:互联网 发布:mysql数据库设计原则 编辑:程序博客网 时间:2024/04/30 14:34
题目
Sliding Window Maximum
A long array A[] is given to you. There is a sliding window of size w which is moving from the very left of the array to the very right. You can only see the w numbers in the window. Each time the sliding window moves rightwards by one position. Following is an example:
The array is [5 4 3 4 4], and w is 3. The output is [5 4 5]
[5 4 3] 4 4: 5
5 [4 3 4] 4: 4
5 4 [3 4 4]: 4
Input: A long array A[], and a window width w
Output: An array B[], B[i] is the maximum value of from A[i] to A[i+w-1]
Requirement: Find a good optimal way to get B[i]
解法 O(N)
class Element { int value; int index;}每次移动window { //将window内的新元素放入maxheap,同时要保存每个元素在数组中的位置; maxheap.push(new Element(value, index)); while(true) { Element element = maxheap.peek(); if ( element.index在window内 ) { print element.value; break; } else maxheap.pop(); }}
0 0
- Sliding Window Maximum
- Sliding Window Maximum
- leetcode Sliding Window Maximum
- [LeetCode]Sliding Window Maximum
- Sliding Window Maximum
- lintcode:Sliding Window Maximum
- leetcode - Sliding Window Maximum
- leetcode239:Sliding Window Maximum
- Sliding Window Maximum
- LeetCode - Sliding Window Maximum
- Sliding Window Maximum
- Leetcode: Sliding Window Maximum
- Sliding Window Maximum
- LeetCode239 Sliding Window Maximum
- [LeetCode]Sliding Window Maximum
- Sliding Window Maximum
- LeetCode Sliding Window Maximum
- [LeetCode]Sliding Window Maximum
- WIN7系统的自带WIFI共享设置
- 一个正整数int有多少bit位为一
- 关于getchar()、scanf()、gets()
- 1月风怒
- 对象的序列化
- Sliding Window Maximum
- R语言记录
- JSP中静态include和动态include的区别
- 恩典都用
- C# 基础概念理解
- LeetCode Num64_Minimum Path Sum
- B - New Year Permutation
- 机房重构(一)--UML图
- html5Geolocation地理定位