Contains Duplicate III
2015-08-12 10:32
393 查看
题目链接
思路:
这个题纠结了我一天。开始是思路不会,后来是各种程序溢出。
我在定义数组的时候用的是Integer类型。可是测试用例里面有个是
Integer.Max+t这样就会变成负数。导致计算错误。在编程的时候,程序溢出错误真的是很难处理的一个问题。必须要保证每个运算都不能溢出。
思路:
这个题纠结了我一天。开始是思路不会,后来是各种程序溢出。
我在定义数组的时候用的是Integer类型。可是测试用例里面有个是
Integer.Max+t这样就会变成负数。导致计算错误。在编程的时候,程序溢出错误真的是很难处理的一个问题。必须要保证每个运算都不能溢出。
public class Solution { public boolean containsNearbyAlmostDuplicate(int[] nums, int k, int t) { int n=nums.length; TreeSet<Long> mySet=new TreeSet<Long>(); for(int i=0;i<n;i++) { Long lower=mySet.ceiling((long)(nums[i]-t)); Long uper=mySet.lower((long)(nums[i]+t)); if((lower!=null&&Math.abs(lower-nums[i])<=t)||(uper!=null&&Math.abs(uper-nums[i])<=t)) { return true; } mySet.add((long)nums[i]); if(i-k>=0) { mySet.remove((long)nums[i-k]); } } return false; } }
相关文章推荐
- 解决Failed to allocate memory: 8
- 2015 Multi-University Training Contest 7 hdu 5371 Hotaru's problem
- 如何获取经纬度之间两点间真实距离(适用于GoogleMap,BaiduMap,Amap等)
- 报错:failed to get the task for process XXX(解决方案)
- 一个epoll/aio/eventfd结合使用的简单例子
- 数据挖掘十大算法——Naive Bayes
- Failed to load class "org.slf4j.impl.StaticLoggerBinder问题故障的解决
- HDU 2473 Junk-Mail Filter (并查集的删除操作)
- scala 学习笔记(05) OOP(中)灵活的trait
- 2015 Multi-University Training Contest 7(hdu5371、5372、5373、5375、5378、5379)(dp+概率Manachar+dfs计数+树状数组)
- 2015 Multi-University Training Contest 7 hdu 5372 Segment Game
- hdu 1532 Drainage Ditches 增广路 ford
- hdu 1532 Drainage Ditches 增广路 ford
- Try it again and believe in me
- leetcode -eleven:Container With Most Water
- 2015 HUAS Summer Trainning #5~E
- RMAN备份时报“ORA-19504: failed to create file”和“ORA-27038: created file already exists”
- 用RAID0 安装Ubuntu Server
- 2015 Multi-University Training Contest 7 hdu 5379 Mahjong tree
- 安装Ubuntu server 时报错 "The 'grub-pc' package failed to install into /target/ 的解决方法