Contains Duplicate III
2015-09-27 18:26
357 查看
题意:
给定一个数组,判断数据是否含有两个元素i,j,距离不大于k,值不大于t;
分析:
用Treeset,因为其有两个特别好用的函数floor(n)和ceiling(n),分别返回集合中刚大于n和刚小于n的元素,没有的话返回null;
参考代码:
http://www.programcreek.com/2014/06/leetcode-contains-duplicate-iii-java/
给定一个数组,判断数据是否含有两个元素i,j,距离不大于k,值不大于t;
分析:
用Treeset,因为其有两个特别好用的函数floor(n)和ceiling(n),分别返回集合中刚大于n和刚小于n的元素,没有的话返回null;
参考代码:
http://www.programcreek.com/2014/06/leetcode-contains-duplicate-iii-java/
public boolean containsNearbyAlmostDuplicate(int[] nums, int k, int t) { if (k < 1 || t < 0) return false; TreeSet<Integer> set = new TreeSet<Integer>(); for (int i = 0; i < nums.length; i++) { int c = nums[i]; if ((set.floor(c) != null && c <= set.floor(c) + t) || (set.ceiling(c) != null && c >= set.ceiling(c) -t)) return true; set.add(c); if (i >= k) set.remove(nums[i - k]); } return false; }
相关文章推荐
- vs2010编译没有问题,然而运行出错Run-Time Check Failure #2 - Stack around the variable 'a' was corrupted.
- MainPage.xaml
- 使用SDL2出现 “error LNK2019: 无法解析的外部符号 _SDL_main,该符号在函数 _main 中被引用” 时的可能错误记录
- Hdu1163 Eddy's digitai Roots(九余数定理)
- 真机测试INSTALL_FAILED_INSUFFICIENT_STORAGE解决办法
- 如何重装air
- main函数的参数:处理命令行选项
- 2015 ACM/ICPC Asia Regional Shanghai Online 1008
- Handling Complexity in the Halo 2 AI
- Contains Duplicate III
- Training ------- Getting Started
- mybaits标签
- SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
- HDU 5476 Explore Track of Point(几何)——2015 ACM/ICPC Asia Regional Shanghai Online
- 强大的仿苹果启动器 Cairodock
- HDU 5478 Can you find it(快速幂)——2015 ACM/ICPC Asia Regional Shanghai Online
- 2015 ACM/ICPC Asia Regional Shanghai Online
- 2015 ACMICPC Asia Regional Shanghai Online
- 循环引用之【#import】【@class】和循环【retain】之【assign】
- HDU 5477.A Sweet Journey【2015 ACM/ICPC Asia Regional Shanghai Online】【9月26】