散列表

武文斌774 天前
数据结构·散列表
数据结构:哈希表、排序和查找一、哈希算法1.将数据通过哈希算法映射成一个健值,存取都在同一个位置,实现数据的高效存储和查找,时间复杂度由O(n)->O(1)
Skylar_.4 天前
数据结构·算法·嵌入式·哈希算法·散列表
嵌入式 - 数据结构:哈希表和排序与查找算法目录一、哈希表:高效存取数据1. 哈希表核心概念2. 哈希表的实现(1)插入操作(2)遍历操作(3)查找操作
Aczone285 天前
数据结构·哈希算法·散列表
数据结构(五):顺序循环队列与哈希表顺序循环队列本质上是一个使用数组实现的队列结构,其头尾指针分别用于标记出队(删除)与入队(添加)的位置。为了实现循环效果,队列头尾位置通过取模操作循环利用数组空间。
ZLRRLZ9 天前
数据结构·c++·散列表
【数据结构】哈希表实现目录1. 哈希概念2 哈希冲突和哈希函数3. 负载因子4. 将关键字转为整数5. 哈希函数5.1直接定址法
岁忧10 天前
java·c++·算法·leetcode·go·散列表
(nice!!!)(LeetCode 每日一题) 2561. 重排水果 (哈希表 + 贪心)思路:哈希表+贪心,时间复杂度0(nlogn)。哈希表来记录两个数组中元素的差异情况,如果相差的值不是偶数,那无法相等,返回-1即可。 差值都为偶数,那可以开始交换,用数组a、b来记录两个篮子需要交换的水果。理论上是选这两个篮子组合里最小的一半即可,但没有限制水果的交换次数,此时可能会存在最小的一个水果呢,用于做中间商,交换两个数组中的元素,也就是进行两次。细节看注释。
逐花归海.14 天前
数据结构·c++·程序人生·哈希算法·散列表
『 C++ 入门到放弃 』- 哈希表哈希,也称「 散列 」是一种用来进行高效查找的数据结构,查找的时间复杂度平均为O(1),其本质就是依赖哈希函数这个算法来将 key 和该 key 存储位置建立一个映射关系。
每天都在想吃啥15 天前
数据结构·哈希算法·散列表
day22 哈希表和二叉树存放记录数组,主要实现查找的功能取关键字被某个不大于散列表表长m的数p除后所得的余数为散列地址H(key)=key MOD p , p≤m
快乐飒男17 天前
c语言·哈希算法·散列表
哈希表(c语言)哈希表是一种以关联方式存储数据的数据结构。在哈希表中,数据以数组格式存储,其中每个数据值都有自己的唯一的索引值。哈希表也叫散列表,是根据关键码值(Key Value)而直接进行访问的数据结构。它通过把关键码之值映射到表中一个位置来访问记录。
幼稚园的山代王19 天前
算法·哈希算法·散列表
TreeMap一致性哈希环设计与实现 —— 高可用的数据分布引擎在分布式系统中,服务节点的增删是常态操作,例如缓存节点扩容、数据库分片或服务实例上线下线。传统的取模方式(如key.hashCode() % N)虽然简单,但一旦节点数量发生变化,会导致大量数据迁移,严重影响系统性能与可用性。
程序员三明治19 天前
数据结构·算法·哈希算法·散列表
【重学数据结构】哈希表 Hash目录哈希表是怎么来的?哈希表的数据结构哈希函数的设计那此时你可能有疑问,为什么不能直接使用hashcode()?
Tisfy19 天前
算法·leetcode·散列表·题解·双指针·滑动窗口·哈希表
LeetCode 1695.删除子数组的最大得分:滑动窗口(哈希表)力扣题目链接:https://leetcode.cn/problems/maximum-erasure-value/
岁忧20 天前
java·c++·算法·leetcode·go·散列表
(LeetCode 每日一题) 1695. 删除子数组的最大得分 (哈希表+双指针)思路:哈希表+双指针,时间复杂度0(n)。哈希表维护双指针内元素出现的情况,当右指针指向的元素数量大于1时,移动左指针,直到数量为1即可。细节看注释
岁忧1 个月前
java·c++·leetcode·面试·go·散列表
(nice!!!)(LeetCode 面试经典 150 题 ) 30. 串联所有单词的子串 (哈希表+字符串+滑动窗口)思路:哈希表+字符串+滑动窗口,时间复杂度0(mlen)。 因为每个字符串的长度都相等,在维护窗口i~i+mlen的元素出现情况后,可以从i+len处继续往后移动。细节看注释。
汤姆爱耗儿药1 个月前
数据结构·散列表
数据结构——散列表散列表是实现字典操作的一种有效数据结构。尽管最坏情况下,散列表中查找一个元素的时间与链表中查找的时间相同,达到了 θ ( n ) θ(n) θ(n)。然而在实际应用中,散列查找的性能是极好的。在一些合理的假设下,在散列表中查找一个元素的平均时间是 O ( 1 ) O(1) O(1)。散列表是普通数组概念的推广。由于对普通数组可以直接寻址,使得能在 O ( 1 ) O(1) O(1)时间内访问数组中的任意位置。本文介绍了散列表相关概念,解决散列冲突的两种方法,介绍3种散列值计算方法,最后还会介绍一种适用于静
运器1231 个月前
开发语言·人工智能·python·算法·ai·散列表·ai编程
【一起来学AI大模型】算法核心:数组/哈希表/树/排序/动态规划(LeetCode精练)核心思想:通过索引指针高效遍历与操作数组核心思想:空间换时间,实现O(1)查找核心思想:分治思想处理子树,栈/队列辅助迭代
岁忧1 个月前
java·c++·算法·leetcode·go·散列表
(LeetCode 每日一题) 1865. 找出和为指定值的下标对 (哈希表)思路:哈希表,时间复杂度0(n)。 记录nums1、nums2数组,同时使用哈希表mp来维护数组nums2里元素出现的情况。
英雄哪里出来2 个月前
数据结构·算法·散列表·哈希表·解题报告
《哈希表》K倍区间(解题报告)题目链接:K倍区间计算子数组和能被k整除的子数组数量的算法。通过前缀和与哈希表的结合,高效地统计满足条件的子数组。   需要注意的是,题目要求求的是 k 的非负整数倍,而非整数倍,所以哈希表的值光存储次数是不够的,需要维护一个列表,在枚举到第 i 个元素的时候,在哈希表 hashset[ sum[i]%k ] 的所有列表元素中,统计小于等于 sum[i] 的元素个数进行累加,因为只有小于等于 sum[i] 的值才能保证是 非负整数 倍。
岁忧2 个月前
java·c++·算法·leetcode·go·散列表
(LeetCode 面试经典 150 题) 169. 多数元素(哈希表 || 二分查找)方法一:二分法,最坏的时间复杂度0(nlogn),但平均0(n)即可。空间复杂度为0(1)。C++版本:
武帝为此2 个月前
数据结构·哈希算法·散列表
【数据结构中哈希函数与哈希表】哈希表(Hash Table)就是一种常见的、高效的数据结构,它利用哈希函数将数据映射到固定大小的空间,从而实现常数级别的插入、删除和查找操作。
青山是哪个青山2 个月前
算法·散列表·宽度优先
位运,模拟,分治,BFS,栈和哈希表位运算直接操作二进制位,效率极高,常用于实现哈希、状态压缩和整数的特殊计算。核心思想:经典应用场景:的完整序列和残缺数组的所有数字进行异或操作,最终结果即为缺失的数字。