leetcode--Contains Duplicate III
来源:互联网 发布:哪里有呼死你软件出售 编辑:程序博客网 时间:2024/06/05 17:05
Given an array of integers, find out whether there are two distinct indices i and j in the array such that the difference between nums[i] and nums[j] is at most t and the difference between i and j is at most k.
题意:给定一个整形数组,检查是否存在两个序号i,j,要求nums[i]和nums[j]的差最多是t,同时i和j的差最多是k
分类:树
解法1:容易想到的思路是维护一个长度为k的窗口,每次检查新值和原窗口中值的差会不会超过t即可。
如果使用两重循环,时间复杂度是O(nk)会超时。我们使用TreeSet去检查差值,使复杂度为O(nLogk)。
set的subSet()方法可以指定一个范围,原来set中在这个范围内的数据,组成一个新的SortedSet返回。
同样的思路,我们可以这样写:
原文链接http://blog.csdn.net/crazy__chen/article/details/47279997
阅读全文
0 0
- leetcode - Contains Duplicate III
- [leetcode] Contains Duplicate III
- LeetCode Contains Duplicate III
- LeetCode Contains Duplicate III
- [LeetCode] Contains Duplicate III
- LeetCode Contains Duplicate III
- LeetCode | Contains Duplicate III
- LeetCode Contains Duplicate III
- leetcode: Contains Duplicate III
- Leetcode: Contains Duplicate III
- leetcode--Contains Duplicate III
- [Leetcode]Contains Duplicate III
- leetcode:Contains Duplicate III
- *LeetCode-Contains Duplicate III
- leetcode | Contains Duplicate III
- LeetCode-Contains Duplicate III
- LeetCode-Contains Duplicate III
- leetcode contains duplicate III
- [UVa 1610] 聚会游戏(Party Games)
- Java 正则表达式之江湖小虾米篇
- java 集合类深入理解
- tcp 状态转换图以及问题点
- 事件分发机制
- leetcode--Contains Duplicate III
- java_时间戳与Date_相互转化
- AHK语法
- 关于面向对象思想
- 二三十岁我们为什么要奋斗?月入上万方向在哪里?
- OpenJudge[7545]二维数组回形遍历
- javascript练习(二)
- Python 俄罗斯方块
- windows Apache 部署 django