C#中Dictionary<K,V>对应的非泛型类是Hashtable

1. Dictionary<K,V>的非泛型对应的是Hashtable;
哈希表是一种查找数据非常快的数据结构,这也是Dictionary查找数据非常快的原因。

2. ASP.NET中的Application、Cache、Session、Request.Params的键值数据等均由Dictionary/Hashtable 实现。
数据库中的索引也是相似的原理。

3. Dictionary中有一个存储键值对的区域,采用一个固定算法(散列算法,非常快,可以认为时间复杂度为O(1) )
根据key来计算这个kvp存放的地址,计算key的值的键值对应该存储的地址,将键值对放入指定的地址即可。
查找的时候首先计算key的地址,就可以找到数据了。根据key找房间号,而不是逐个房间找。(*)

4. List<T>对应的非泛型结构是ArrayList
posted @ 2012-09-26 00:00  liqipeng  阅读(219)  评论(0)    收藏  举报