239Sliding Window Maximum
来源:互联网 发布:iphone移动数据怎么关 编辑:程序博客网 时间:2024/04/30 02:12
这题的brute force很简单,可以做到O(NK),通过是没有问题的,只是太慢。
高效的方法是维护一个优先级队列,保证每次获取最大值都可以在O(1)时间完成,而每个元素进队出队仅1次,也就使得总时间是O(N)。
我维护的元素是 (数值,下标) 维护下标是为了某些时刻删减元素 (当 cur_index- k== queue[0][0] 时刻,队列的头元素应该被删除)。
这个优先级队列保证按照 数值从大到小排序,因此当有新元素到来的时候,我们比较新元素的数值 和原先队列的最后一个,如果原先队列最后一个比新元素的数值小,则删除了原先的最后一个,然后继续比较,直到 最后一个元素 不小于 新元素。这样就能保证,数值是从大到小排序的了。
0 0
- 239Sliding 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] #239 Sliding Window Maximum
- [leetcode 239]Sliding Window Maximum(c)
- [Leetcode 239, Hard] Sliding Window Maximum
- leetcode:heap:Sliding Window Maximum(239)
- java小程序:输出一到一百素数 , 每五个换行
- ubuntu git push 重复输入用户名和密码
- 【Google内推】2016校园招聘
- 为什么看AV
- 南阳oj 大数阶乘 题目28
- 239Sliding Window Maximum
- 兔子藏洞问题
- SVN安装---本机安装---SVN仓库(2)
- AlertDialog的几种使用形式
- hdu 5116 dp
- UVA 11324 The Largest Clique(tarjan有向图强连通+缩点)
- Linux远程管理工具
- C语言的冒泡代码
- 打印N个数的全排列