zoukankan      html  css  js  c++  java
  • Leetcode705.Design HashSet设置哈希集合

    不使用任何内建的哈希表库设计一个哈希集合

    具体地说,你的设计应该包含以下的功能

    • add(value):向哈希集合中插入一个值。
    • contains(value) :返回哈希集合中是否存在这个值。
    • remove(value):将给定值从哈希集合中删除。如果哈希集合中没有这个值,什么也不做。

    示例:

    MyHashSet hashSet = new MyHashSet(); hashSet.add(1);         hashSet.add(2);         hashSet.contains(1);    // 返回 true hashSet.contains(3);    // 返回 false (未找到) hashSet.add(2);           hashSet.contains(2);    // 返回 true hashSet.remove(2);           hashSet.contains(2);    // 返回 false (已经被删除)

    注意:

    • 所有的值都在 [1, 1000000]的范围内。
    • 操作的总数目在[1, 10000]范围内。
    • 不要使用内建的哈希集合库。

    class MyHashSet {
    private:
        int hash[1000000 + 5] = {0};
    public:
        /** Initialize your data structure here. */
        MyHashSet() {
    
        }
    
        void add(int key) {
            if(hash[key] == 0)
                hash[key] = 1;
        }
    
        void remove(int key) {
            if(hash[key] == 1)
                hash[key] = 0;
        }
    
        /** Returns true if this set did not already contain the specified element */
        bool contains(int key) {
            if(hash[key] == 0)
                return false;
            return true;
        }
    };
  • 相关阅读:
    介绍Asta4D
    Mac下terminal的常用命令
    Mac下的终端(Terminal)简介
    SCA简介及配置示例
    抽象
    自助式微软BI工具PowerPivot简介!
    C编译: 使用gdb调试
    operamasksui2.0 +MVC4.0+EF5.0实战 当EntityFramework遇上Json,引爆 循环引用 这颗雷
    ASP.NET MVC分部类的使用
    GWT入门教程
  • 原文地址:https://www.cnblogs.com/lMonster81/p/10433983.html
Copyright © 2011-2022 走看看