LeetCode Contains Duplicate II
2015-06-02 08:08
387 查看
LeetCode Contains Duplicate II
题目
思路
跟Contains Duplicate一模一样,加个坐标判断即可。代码
[code]bool containsNearbyDuplicate(int* nums, int numsSize, int k) { if (numsSize <= 1) return false; int length = 100007; if (numsSize < length) length = numsSize; int * hash = (int*)malloc(sizeof(int) * length); int * pos = (int*)malloc(sizeof(int) * length); bool * used = (bool*)malloc(sizeof(bool) * length); for (int i = 0; i < length; i++) used[i] = false; for (int i = 0; i < numsSize; i++) { int p = (nums[i] + numsSize) % numsSize; while (used[p]) { if (hash[p] == nums[i] && i - pos[p] <= k) { free(hash); free(pos); free(used); return true; } p++; if (p == length) p = 0; } hash[p] = nums[i]; pos[p] = i; used[p] = true; } free(hash); free(pos); free(used); return false; }
相关文章推荐
- [LeetCode] Contains Duplicate III 包含重复值之三
- 岁月的剪影【六月Rainy】
- aidl ( 六) RemoteCallbackList
- Contains Duplicate III - LeetCode 220
- Contains Duplicate II - LeetCode 219
- stitching_detail
- Ansible(14)wait_for模块
- RaisedCosineWindower API及加窗
- Leetcode Contains Duplicate
- Leetcode #11 Container With Most Water
- Leetcode Container With Most Water
- SSIS Error:Package Validation Error. SSIS Error Code DTS_E_OLEDBERROR. .Error code: 0x80040E37. An OLE DB record is available. Hresult: 0x80040E37
- JetBRAINS 系列注册机
- FreeSWITCH技巧:notify与message-waiting
- LeetCode OJ 之 Contains Duplicate II (包含重复判断- 二)
- LeetCode OJ 之 Contains Duplicate (包含重复判断)
- cocoa pod 制作私有静态库时写完codspec文件又遇到了linker command failed却没有具体错误原因的问题
- [LeetCode] Contains Duplicate III
- socket domain 样例
- org.hibernate.AssertionFailure: null id don't flus