LeetCode 219 存在重複元素 II

2021-10-14 05:59:15 字數 537 閱讀 4945

原題鏈結

思路:方法一:雜湊表儲存對,先查詢是否存在該nums[i],若不存在,則插入;若存在,比較儲存的index值與當前下標的差值的絕對值與k的大小,滿足條件即返回true,結束返回false。空間複雜度為o(n),時間複雜度為o(n^2)

方法二:利用無序set建乙個大小為 k 的滑動視窗,判斷視窗內是否有重複元素,如果有則返回true,結束返回false。

方法一**:

class

solution

mp[nums[i]

]= i;

}return

false;}

};

方法二**:

class

solution

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...

Leetcode219 存在重複元素 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 輸入...