15 Jun 2024C++ / Python / TypeScriptEasy

Contains Duplicate II

Collected C++, Python, TypeScript solutions for contains duplicate ii. Add a dedicated write-up later if you want deeper notes.

auto-generated entry for Contains Duplicate II. the solution files are available below.

solution files

  • C++ contains-duplicate-ii/synced-solution.cpp
  • Python contains-duplicate-ii/synced-solution.py
  • TypeScript contains-duplicate-ii/synced-solution.ts

Solution files

Pythoncontains-duplicate-ii/synced-solution.py
def containsNearbyDuplicate(nums: list[int], k: int) -> bool:
    seen = set()
    for i in range(len(nums)):
        if nums[i] in seen:
            return True
        seen.add(nums[i])
        if len(seen) > k:
            seen.remove(nums[i - k])
    return False
C++contains-duplicate-ii/synced-solution.cpp
class Solution {
public:
    bool containsNearbyDuplicate(vector<int>& nums, int k) {
        unordered_set<int> seen;
        for (int i = class="syntax-number">0; i < nums.size(); i++) {
            if (seen.count(nums[i])) {
                return true;
            }
            seen.insert(nums[i]);
            if (seen.size() > k) {
                seen.erase(nums[i - k]);
            }
        }
        return false;
    }
};
TypeScriptcontains-duplicate-ii/synced-solution.ts
function containsNearbyDuplicate(nums: number[], k: number): boolean {
    const seen = new Set<number>();
    for (let i = class="syntax-number">0; i < nums.length; i++) {
        if (seen.has(nums[i])) {
            return true;
        }
        seen.add(nums[i]);
        if (seen.size > k) {
            seen.delete(nums[i - k]);
        }
    }
    return false;
}