在.NetFramework中集合类有很多种,比如:Array(数组),ArrayList(数组列表),List(列表),HashTable(哈希表),Dictionary(字典),Stack(堆栈) ,Queue(队列)ArrayList是数组的复杂版本,ArrayList 类提供在大多数Coll...
分类:
其他好文 时间:
2014-09-01 19:20:33
阅读次数:
188
一、HashSet概述:HashSet实现Set接口,由哈希表(实际上是一个HashMap实例)支持。它不保证set的迭代顺序;特别是它不保证该顺序恒久不变。此类允许使用null元素。二、HashSet的实现:对于HashSet而言,它是基于HashMap实现的,HashSet底层使用HashMap...
分类:
编程语言 时间:
2014-09-01 09:15:12
阅读次数:
279
无论是在平时的练习还是项目当中,HashMap用的是非常的广,真可谓无处不在。平时用的时候只知道HashMap是用来存储键值对的,却不知道它的底层是如何实现的。一、HashMap概述 HashMap基于哈希表的Map接口的实现。此实现提供所有可选的映射操作,并允许使用null值和null键。(除了....
分类:
编程语言 时间:
2014-09-01 00:22:02
阅读次数:
350
哈希函数的构造方法:1,直接定址法2,数字分析法3,平方取中法4,折叠法5,保留余数法6,随机数法处理冲突的方法:1,开放地址法:Hi = ( H(key) + di) MOD m i=1,2,....,k(k <= m-1) di =1,2,3,...,m-1称为线性...
分类:
其他好文 时间:
2014-08-30 22:53:50
阅读次数:
276
有一个1G大小的一个文件,里面每一行是一个词,词的大小不超过16字节,内存限制大小是1M。返回频数最高的100个词。思路: 把这1G的数据一次性全部读入内存是不可能了,可以每次读一行,然后将该词存到一个哈希表里去,哈希表的value是词出现的次数。 现在的问题是,这个哈希表有多大,能不能装载1M.....
分类:
其他好文 时间:
2014-08-29 18:12:18
阅读次数:
282
Hash表 Hash表也称散列表,也有直接译作哈希表,Hash表是一种特殊的数据结构,它同数组、链表以及二叉排序树等相比较有很明显的区别,它能够快速定位到想要查找的记录,而不是与表中存在的记录的关键字进行比较来进行查找。这个源于Hash表设计的特殊性,它采用了函数映射的思想将记录的存储位置与记录.....
分类:
其他好文 时间:
2014-08-29 13:01:07
阅读次数:
208
1 /*题目是: 2 输入一段文字,然后两个两个为前缀单词,后一个单词为后缀。保存起来。 3 然后输入前缀(两个单词),按前缀后缀表随机输出直到结尾。 4 5 思路就是建立哈希表 以两个单词(两个字符数组)为key值。 6 哈希的编码方式是用ASCII码的总和。 7 */ 8 ...
分类:
编程语言 时间:
2014-08-28 22:40:56
阅读次数:
446
哈希表是种数据结构,它可以提供快速的插入操作和查找操作。第一次接触哈希表时,它的优点多得让人难以置信。不论哈希表中有多少数据,插入和删除(有时包括侧除)只需要接近常量的时间即0(1)的时间级。实际上,这只需要几条机器指令。
分类:
其他好文 时间:
2014-08-27 18:22:48
阅读次数:
187
注:以下源码基于jdk1.7.0_11
Set集合其实是对Map集合的封装,Map集合存储的是键值对,那么我们将值隐藏,不向外界暴露,这样就形成了Set集合。
对应Map集合的两个很重要的实现HashMap(基于哈希表),TreeMap(基于红黑树),Set集合也对应了两个类HashSet和TreeSet。由于之前花很多篇幅介绍了HashMap和TreeMap,在此将不再介绍其...
分类:
其他好文 时间:
2014-08-24 00:24:41
阅读次数:
248
注:以下源码基于jdk1.7.0_11
之前介绍了一系列Map集合中的具体实现类,包括HashMap,HashTable,LinkedHashMap。这三个类都是基于哈希表实现的,今天我们介绍另一种Map集合,TreeMap。TreeMap是基于红黑树实现的。
介绍TreeMap之前,回顾下红黑树的性质:
首先,我们要明确,红黑树是一种二叉排序树,而且是平衡二叉树。因而红黑树...
分类:
其他好文 时间:
2014-08-23 23:01:21
阅读次数:
510