[leetcode 220]Contains Duplicate III
来源:互联网 发布:吴昕淘宝店omg关了吗 编辑:程序博客网 时间:2024/05/01 03:46
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.
查找一个数组中是否存在两个元素,nums[i]和nums[j],其中两个元素的的差的绝对值|nums[i]-nums[j]|<=t,两个元素的下标|i-j|<=k.
建立下标与元素的映射关系,然后查找就好了。。。。
AC代码:
class Solution {public: bool containsNearbyAlmostDuplicate(vector<int>& nums, int k, int t) { if(k<=0||t<0) return false; int sum=nums.size(); if(sum<=1) return false; map<int,int> m; int j=0; for(int i=0;i<sum;++i) { if(i-j>k&&m[nums[j]]==j) m.erase(nums[j++]); map<int,int>::iterator ite=m.lower_bound(nums[i]-t); if(ite!=m.end()&&abs(ite->first-nums[i])<=t) return true; m[nums[i]]=i; } return false; }};其他leetcode题目AC代码:https://github.com/PoughER
0 0
- Contains Duplicate III - LeetCode 220
- leetcode 220: Contains Duplicate III
- Leetcode 220 Contains Duplicate III
- leetcode #220 Contains Duplicate III
- LeetCode(220) Contains Duplicate III
- leetcode 220: Contains Duplicate III
- [leetcode 220]Contains Duplicate III
- [LeetCode 220] Contains Duplicate III
- leetcode 220 Contains Duplicate III
- 【LEETCODE】220-Contains Duplicate III
- LeetCode 220 Contains Duplicate III
- LeetCode 220 Contains Duplicate III
- leetcode-Contains Duplicate III-220
- LeetCode 220 Contains Duplicate III
- leetcode - Contains Duplicate III
- [leetcode] Contains Duplicate III
- LeetCode Contains Duplicate III
- LeetCode Contains Duplicate III
- Objective-C类,NSUrl介绍和使用
- 小胖说事38----tableview:ios7 分割线短 15 像素(废弃) ios8方法如何将分割线还原
- android:ellipsize属性的含义
- Qt信号与槽
- STM32中assert_param的使用
- [leetcode 220]Contains Duplicate III
- crontab 定时完成某任务
- web 前端学习笔记(1)
- ZigZag字符长转换
- Attempting to badge the application icon but haven't received permiss...
- 在VS2010中的MFC中配置GDI+
- makefile中的注释
- POJ1556The Doors【判断线段相交+dijkstra】
- UVa 524:Prime Ring Problem(回溯)