leetcode 数据结构 探索哈希表
Posted jerrygogo
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了leetcode 数据结构 探索哈希表相关的知识,希望对你有一定的参考价值。
1、哈希表:哈希表
是一种使用哈希函数
组织数据,以支持快速插入和搜索的数据结构。通过选择合适的哈希函数,哈希表可以在插入和搜索方面实现出色的性能。
哈希表的关键思想是使用哈希函数将键映射到存储桶。
(1)哈希集合:集合
数据结构的实现之一,用于存储非重复值。
(2)哈希映射:映射
数据结构的实现之一,用于存储(key, value)
键值对。
哈希函数: y = x%5 (x是键值,y是桶的索引)
插入:通过哈希函数解析键,将它们映射到相应的桶中。
搜索:通过相同的哈希函数解析键,并仅在特定存储桶中搜索。
2、哈希集合的操作:add(value)
:向哈希集合中插入一个值;
remove(value)
:将给定值从哈希集合中删除。
3、哈希映射的操作:put(key, value)
:向哈希映射中插入(键,值)的数值对,如果键对应的值已经存在,更新这个值。
get(key)
:返回给定的键所对应的值,如果映射中不包含这个键, 返回-1。
remove(key)
:如果映射中存在这个键,删除这个数值对。
练习题:(1)快乐数:
def ishappy(n): hashset = set() while True: n = sum([int(i)**2 for i in str(n)]) if n==1: return True elif n in hashset: return False else: hashset.add(n) n = 19 print(ishappy(n))
以上是关于leetcode 数据结构 探索哈希表的主要内容,如果未能解决你的问题,请参考以下文章