LeetCode(705)——设计哈希集合(JavaScript)
不使用任何内建的哈希表库设计一个哈希集合
具体地说,你的设计应该包含以下的功能
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]
范围内。 - 不要使用内建的哈希集合库。
/*** Initialize your data structure here.*/
var MyHashSet = function() {};/** * @param {number} key* @return {void}*/
MyHashSet.prototype.add = function(key) {};/** * @param {number} key* @return {void}*/
MyHashSet.prototype.remove = function(key) {};/*** Returns true if this set contains the specified element * @param {number} key* @return {boolean}*/
MyHashSet.prototype.contains = function(key) {};/** * Your MyHashSet object will be instantiated and called as such:* var obj = new MyHashSet()* obj.add(key)* obj.remove(key)* var param_3 = obj.contains(key)*/
个人解法
var MyHashSet = function() {this.hashSet = {};
};MyHashSet.prototype.add = function(key) {this.hashSet[key] = key;
};MyHashSet.prototype.remove = function(key) {delete this.hashSet[key];
};MyHashSet.prototype.contains = function(key) {if(this.hashSet[key] === undefined){return false;}else{return true;}
};
LeetCode(705)——设计哈希集合(JavaScript)相关推荐
- leetcode 705. 设计哈希集合
不使用任何内建的哈希表库设计一个哈希集合(HashSet). 实现 MyHashSet 类: void add(key) 向哈希集合中插入值 key . bool contains(key) 返回哈希 ...
- 705. 设计哈希集合
链接:705. 设计哈希集合 题解:https://leetcode-cn.com/problems/design-hashset/solution/she-ji-ha-xi-ji-he-by-lee ...
- 力扣题目——705. 设计哈希集合
注:本文的代码实现使用的是 JS(JavaScript),为前端中想使用JS练习算法和数据结构的小伙伴提供解题思路. 描述 不使用任何内建的哈希表库设计一个哈希集合(HashSet). 实现 MyHa ...
- 705.设计哈希集合
题目: 思路: 也就是要维护一个二维动态数组来存储这些数据,要注意的是LinkedList中有三种remove()方法 默认使用的是根据索引来移除元素 因此这时,我们要把每个函数的形参都设置为Inte ...
- 算法--------设计哈希集合
设计哈希集合 不使用任何内建的哈希表库设计一个哈希集合具体地说,你的设计应该包含以下的功能add(value):向哈希集合中插入一个值. contains(value) :返回哈希集合中是否存在这个值 ...
- LeetCode 705. Design HashSet (设计哈希集合)
题目标签:HashMap 题目让我们设计一个 hashset,有add,contains,remove 功能. 建立一个boolean array,index 是数字的值,具体看code. Java ...
- 刷leetcode第705题- 设计哈希集合
2019独角兽企业重金招聘Python工程师标准>>> 这个我可能做的不是很符合题意,虽然AC了,但是没有去用到hash函数之类的方式.同样使用了位运算来搞定这一切,简单易懂.上代码 ...
- leetcode 706. 设计哈希映射
不使用任何内建的哈希表库设计一个哈希映射(HashMap). 实现 MyHashMap 类: MyHashMap() 用空映射初始化对象 void put(int key, int value) 向 ...
- C#LeetCode刷题-哈希表
哈希表篇 # 题名 刷题 通过率 难度 1 两数之和 C#LeetCode刷题之#1-两数之和(Two Sum) 42.8% 简单 3 无重复字符的最长子串 24.2% 中等 18 四数之和 ...
最新文章
- python功能强大的库_2018 年最受欢迎的15个顶级 Python 库
- oracle 11g中密码过期问题
- tensorflow 加载模型
- jquery toggle方法使用出错?请看这里-遁地龙卷风
- 你竟然没用 Nuget 构建项目?
- 辐射避难所服务器维护,《辐射:避难所Online》6月2日停服维护更新公告
- 51NOD 1088 最长回文子串1089 最长回文子串 V2(Manacher算法)
- idea抽取重复方法快捷键_使用 IDEA 几分钟就重构了同事800 行quot;又臭又长quot; 的类!真香!...
- winexec函数 执行powershell 脚本_丢掉 Powershell.exe 来渗透测试
- mysql不同字符集_如何在mysql中设置不同的字符集
- java uuid 随机生成唯一序列号
- ggplot2作图详解:标尺(scale)设置
- 谭晓生:如何面对IoT时代的安全新挑战?
- 土豆英雄抽传说卡程序(非土豆英雄玩家不要看)
- 安装protoc教程
- 软件工程——团队作业4
- 32位汇编语言程序设计(钱晓捷) 高清完整
- matlab拟合度R方,...1),问题是什么是拟合优度?、R^2大于多少说明拟合度很好,R^2在...-拟合度-数学-冀群是同学...
- wincc项目 CS结构 ES工程师站下装到OS服务器失败或者特别慢的原因
- 33个CadQuery程序化建模实例