写点什么

【LeetCode】设计哈希映射 Java 题解

用户头像
HQ数字卡
关注
发布于: 2021 年 03 月 14 日

题目

不使用任何内建的哈希表库设计一个哈希映射(HashMap)。


实现 MyHashMap 类:


MyHashMap() 用空映射初始化对象

void put(int key, int value) 向 HashMap 插入一个键值对 (key, value) 。如果 key 已经存在于映射中,则更新其对应的值 value 。

int get(int key) 返回特定的 key 所映射的 value ;如果映射中不包含 key 的映射,返回 -1 。

void remove(key) 如果映射中存在 key 的映射,则移除 key 和它所对应的 value 。


来源:力扣(LeetCode)

链接:https://leetcode-cn.com/problems/design-hashmap

代码


/** * https://leetcode-cn.com/problems/design-hashmap/ */class MyHashMap {
int[] arr; /** Initialize your data structure here. */ public MyHashMap() { arr = new int[1000009]; Arrays.fill(arr, -1); }
/** value will always be non-negative. */ public void put(int key, int value) { arr[key] = value; }
/** Returns the value to which the specified key is mapped, or -1 if this map contains no mapping for the key */ public int get(int key) { return arr[key]; }
/** Removes the mapping of the specified value key if this map contains a mapping for the key */ public void remove(int key) { arr[key] = -1; }}
复制代码


总结

  • 今天这个题目是昨天题目的延续,采用超大数组存储即可 AC。

  • 坚持每日一题,加油!


发布于: 2021 年 03 月 14 日阅读数: 10
用户头像

HQ数字卡

关注

还未添加个人签名 2019.09.29 加入

LeetCode,略懂后端的RD

评论

发布
暂无评论
【LeetCode】设计哈希映射Java题解