首先它是继承了AbstractMap,这个抽象类里面有很多方法, 从这个可以看出面向对象的特性,单继承,接口的多实现, 同时实现了序列号接口,可以进行网络传输,在进行网络传输的时候实体类一般都会实现序列号接口,以便传输, 在整合redis的时候,如果实体没有进行序列化,是无法传输进入到redis中的 ...
分类:
其他好文 时间:
2019-01-30 16:11:33
阅读次数:
153
1.hash散列算法 由于hashmap在存储过程中是数组加链表的存储过程,所以定义数组长度为16(建议是2的n次幂的长度),之后进行每个数组的地址都指向一个链表进行存储 hash表算法可对数组长度length取余,如果length是2的n次幂,则可对length-1取位运算& 例如,任意长度8是2 ...
分类:
编程语言 时间:
2019-01-29 20:52:31
阅读次数:
238
"上一章" 中,我们使用了 的技术来处理 ,并用了 实现,贲张我们将实现 中的 、`搜索 删除`接口。 实现接口 我们的 将会实现如下的接口: Insert函数 在 中插入一条记录时,我们需要遍历整个 知道找到一个空的位置,然后执行插入并将 的大小加 。`hash表 count hash表 缩放ha ...
分类:
编程语言 时间:
2019-01-15 22:56:40
阅读次数:
284
"上一章" ,我们讲了 的数据结构,并简单实现了 的初始化与删除操作,这一章我们会讲解 和实现算法,并手动实现一个 函数。 Hash函数 本教程中我们实现的 将会实现如下操作: 输入一个字符串,然后返回一个 到`m`(Hash表的大小)的数字 为一组平常的输入返回均匀的 索引。如果Hash函数不是均 ...
分类:
编程语言 时间:
2019-01-14 00:22:08
阅读次数:
190
"上一章" ,简单介绍了 ,并提出了本教程中要实现的几个 的方法,有 、`insert(a, k, v) delete(a, k) Hash table`使用的数据结构。 数据结构 hash表中存储的每一项 的数据结构: 我们的hash表中保存着一个指向每一项的指针数组,里面还包括hash表的大小, ...
分类:
编程语言 时间:
2019-01-10 01:09:52
阅读次数:
195
LinkedHashMap 简介 hash表和链表实现了map接口,迭代顺序是可以预测的。LinkedHashMap和HashMap的不同是它所有的entry 维持了一个双向链表结构。该链表定义了通常迭代顺序是键插入的顺序。 LinkedHashMap 定义 public class LinkedH ...
分类:
编程语言 时间:
2019-01-05 16:43:26
阅读次数:
216
数位dp 简介 数位dp指满足特定性质的数的计数, 如求 $[l, r]$ 区间内不含 $2$ 的数的个数. 一般来说, 数位dp利用dfs解决, 有时状态数较多, 需要hash表优化. 模板: // 求[l,r] 中各位数字之积为特定值(prod[])数的个数 ll dp[nsz][35][25] ...
分类:
其他好文 时间:
2019-01-05 13:36:11
阅读次数:
164
C++语言 基础算法 位运算 快速幂 模拟 枚举 递推 递归 分治 二分 三分 排序 归并排序 离散化 倍增 贪心 高精度 数据结构 前缀和 差分 栈 对顶栈 单调栈 队列 双端队列 循环队列 单调队列 ST表 链表 链式前向星 Hash表 二叉堆 Huffman树 并查集 路径压缩 按秩合并 扩展 ...
分类:
其他好文 时间:
2018-12-23 15:22:40
阅读次数:
465
哈希值这个应该都听过,并且用于hashMap, hashSet, HashTable.后面对这三个进行详细说明。 哈希表这个数据结构想必大多数人都不陌生,而且在很多地方都会利用到hash表来提高查找效率。在Java的Object类中有一个方法: 根据这个方法的声明可知,该方法返回一个int类型的数值 ...
分类:
编程语言 时间:
2018-12-16 12:22:37
阅读次数:
187
题目描述 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。 思路: 解法一: Hash表存储 class Solution { publi ...
分类:
编程语言 时间:
2018-12-10 20:59:44
阅读次数:
184