給定乙個整數陣列和乙個整數 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
/*|j-i|<=k
由於檢測的是數字是否是重複的,對映會需要很大的空間,且數字範圍不確定
使用std庫unordered_set,是基於雜湊表的結構,可快速查詢元素
1、以滑動視窗的方式將nums插入record
2、每次插入都判斷是否存在重複的值,有則true
3、否則一直插入直到size = k+1,則將第乙個刪除
4、迴圈。。
*/
class
solution
return
false;}
};
217存在重複元素 219 存在重複元素 II
題目官網上有,直接上思路 思路一 利用python的set無重複元素的特性 class solution def containsduplicate self,nums list int bool return len set nums len nums 思路二 先對陣列進行排序,重複元素肯定排在前...
219 存在重複元素 II
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 輸出 t...
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 輸入 n...