Python、C++、JavaScript、SQL、TypeScript の多様な LeetCode ソリューションを探索してください。面接の準備、学習、複数のプログラミング言語でのコードの練習に最適です。 Github リポジトリ リンク
整数配列が与えられた場合 数字
そして整数 k
、 戻る 真実
2つある場合 個別のインデックス 私
そして j
次のような配列で nums[i] == nums[j]
そして abs(i - j) <= k
.
例 1:
入力: 数値 = [1,2,3,1]、k = 3 出力: 真実
例 2:
入力: 数値 = [1,0,1,1]、k = 1 出力: 真実
例 3:
入力: 数値 = [1,2,3,1,2,3]、k = 2 出力: 間違い
制約:
1 <= nums.length <= 10 5
-10 9 <= nums[i] <= 10 9
0 <= k <= 10 5
パイソン
# 時間計算量: O(n) # 空間計算量: O(min(n,k)) import List クラス 解決策: def containsNearbyDuplicate(self, nums: List[int], k: int) -> bool: dic = {} for i, j in enumerate(nums): j が dic かつ i - dic[j] <= k の場合: True を返します dic[j] = i は False を返します nums = [1, 2, 3, 1] k = 3 print(Solution().containsNearbyDuplicate(nums, k))