給定乙個整數陣列和乙個整數 k,判斷陣列中是否存在兩個不同的索引 i 和 j,使得 nums [i] = nums [j],並且 i 和 j 的差的絕對值最大為 k。
示例 1:輸入: nums = [1,2,3,1], k = 3
輸出: true
示例 2:輸入: nums = [1,0,1,1], k = 1
輸出: true
示例 3:輸入: nums = [1,2,3,1,2,3], k = 2
輸出: false
//解法1 暴力法
public
boolean
containsnearbyduplicate
(int
nums,
int k)
}return
false
;}
//解法2 滑動視窗+查詢表
public
boolean
containsnearbyduplicate
(int
nums,
int k)
else
}int left =0;
int right = k+1;
while
(rightreturn
false
;}
//解法3 解法2的優化
public
boolean
containsnearbyduplicate3
(int
nums,
int k)
set.
add(nums[i]);
if(set.
size()
==k+1)
}return
false
;}
leetcode 219 存在重複元素
給定乙個整數陣列和乙個整數 k,判斷陣列中是否存在兩個不同的索引 i 和 j,使得 nums i nums j 並且 i 和 j 的差的絕對值最大為 k。示例 1 輸入 nums 1,2,3,1 k 3 輸出 true 示例 2 輸入 nums 1,0,1,1 k 1 輸出 true 示例 3 輸入...
LeetCode 219 存在重複元素 II
給定乙個整數陣列和乙個整數 k,判斷陣列中是否存在兩個不同的索引i 和j,使得nums i nums j 並且 i 和 j 的差的絕對值最大為 k。示例 1 輸入 nums 1,2,3,1 k 3輸出 true示例 2 輸入 nums 1,0,1,1 k 1輸出 true usr bin pytho...
LeetCode 219 存在重複元素 II
給定乙個整數陣列和乙個整數 k,判斷陣列中是否存在兩個不同的索引 i 和 j,使得 nums i nums j 並且 i 和 j 的差的絕對值最大為 k。示例 1 輸入 nums 1,2,3,1 k 3 輸出 true 示例 2 輸入 nums 1,0,1,1 k 1 輸出 true 示例 3 輸入...