数据结构-哈希表
xushiyu1996818
这个作者很懒,什么都没留下…
展开
-
leetcode-146-LRU缓存机制-java
题目及测试package pid146;/* LRU缓存机制运用你所掌握的数据结构,设计和实现一个 LRU (最近最少使用) 缓存机制。它应该支持以下操作: 获取数据 get 和 写入数据 put 。获取数据 get(key) - 如果关键字 (key) 存在于缓存中,则获取关键字的值(总是正数),否则返回 -1。写入数据 put(key, value) - 如果关键字已经存在,则变更其数据值;如果关键字不存在,则插入该组「关键字/值」。当缓存容量达到上限时,它应该在写入新数据之前删除原创 2020-06-28 14:13:02 · 222 阅读 · 0 评论 -
leetcode-3-无重复字符的最长子串(longest substring without repeating characters)-java
题目及测试package pid003;/*无重复字符的最长子串给定一个字符串,找出不含有重复字符的最长子串的长度。示例 1:输入: "abcabcbb"输出: 3 解释: 无重复字符的最长子串是 "abc",其长度为 3。示例 2:输入: "bbbbb"输出: 1解释: 无重复字符的最长子串是 "b",其长度为 1。示例 3:输入: "pwwkew"...原创 2018-11-02 10:54:37 · 199 阅读 · 0 评论 -
leetcode-380-常数时间插入、删除和获取随机元素(Insert Delete GetRandom O(1))-java
题目及测试package pid381;/* Insert Delete GetRandom O(1)设计一个支持在平均 时间复杂度 O(1) 下,执行以下操作的数据结构。 insert(val):当元素 val 不存在时,向集合中插入该项。 remove(val):元素 val 存在时,从集合中移除该项。 getRandom:随机返回现有集合中的一项。每个元...原创 2019-01-17 10:18:36 · 997 阅读 · 0 评论 -
哈希树总结-java版
目录哈希树的理论基础质数分辨定律余数分辨定理哈希树简介查找删除优点缺点哈希树的java实现节点哈希树哈希树的应用哈希树的理论基础质数分辨定律这个定理可以简单的表述为:n个不同的质数可以“分辨”的连续整数的个数和他们的乘积相等。“分辨”就是指这些连续的整数不可能有完全相同的余数序列。这个为哈希树的分辨方式奠定了理论基础。显然,这个定理...原创 2019-04-19 15:42:36 · 1252 阅读 · 0 评论 -
哈希(散列,Hash)算法总结-java版
目录哈希算法简介哈希算法的分类加法Hash位运算Hash乘法Hash除法Hash查表Hash混合Hash常用的哈希算法直接寻址法数字分析法平方取中法折叠法随机数法除留余数法流行的哈希算法MD4MD5SHA及其他碰撞性哈希算法在java中的使用ObjectIntegerLongStringHa...原创 2019-05-08 11:13:54 · 2326 阅读 · 0 评论 -
一致性哈希总结-java版
为什么要有一致性哈希在分布式系统中,节点的宕机、某个节点加入或者移出集群是常事。对于分布式存储而言,假设存储集群中有10台机器(node),如果采用传统Hash方式对数据分片(item)(即数据根据哈希函数映射到某台机器上存储),哈希函数应该是这样的:hash(item) % 10。根据上面的介绍,当node数发生变化(增加、移除)后,数据会被重新“打散”,导致大部分数据不能落到原来的节点上,...原创 2019-05-08 16:22:06 · 383 阅读 · 0 评论 -
BitMap算法总结-java版
目录简介基本思想为什么要有BitMapBitMap的映射求十进制数对应在数组a中的下标求十进制数对应数组元素a[i]在0-31中的位m使得对应第m个bit位为1使得对应第m个bit位为0java实现内部元素加入查找删除展示测试完整代码复杂度时间空间算法评价优点缺点应用BloomFilter和BItMap...原创 2019-05-06 16:45:37 · 2597 阅读 · 0 评论 -
渐进式哈希总结
目录为什么要有渐进式哈希简介原理数据结构Rehash何时开始Rehash过程Rehash结束Rehash详细步骤Rehash过程中的查找,新增图解准备开始rehashrehash过程中rehash结束为什么要有渐进式哈希我们知道当hash表满员时(或负载因子高于阈值时)会进行rehash,也就是重新调整空间大小,并拷贝原来的数据。这里re...原创 2019-05-09 14:25:40 · 3546 阅读 · 8 评论