[leetcode]705. Design HashSet

1713 ワード

[leetcode]705. Design HashSet
Analysis
年を取ると命を惜しむ~——[ummmm~]
Design a HashSet without using any built-in hash table libraries. To be specific, your design should include these functions: add(value): Insert a value into the HashSet. contains(value) : Return whether the value exists in the HashSet or not. remove(value): Remove a value in the HashSet. If the value does not exist in the HashSet, do nothing. hashset~を設計する
Implement
class MyHashSet {
public:
    /** Initialize your data structure here. */
    MyHashSet() {

    }

    void add(int key) {
        if(set[key] == 0)
            set[key]++;
    }

    void remove(int key) {
        if(set[key] > 0)
            set[key]--;
    }

    /** Returns true if this set contains the specified element */
    bool contains(int key) {
        if(set[key] > 0)
            return true;
        return false;
    }
private:
    int set[1000010] = {0};
};

/**
 * Your MyHashSet object will be instantiated and called as such:
 * MyHashSet obj = new MyHashSet();
 * obj.add(key);
 * obj.remove(key);
 * bool param_3 = obj.contains(key);
 */