本帖最后由 ameanboy 于 2016-3-16 13:02 编辑
几大集合:
首先是单列集合:
1、有序可重复元素列表:
a. ArrayList: 底层是数组实现
b. LinkedList: 底层使用链表实现
c. Vector: 底层使用数组实现
2、无序不可重复元素集合
a. HashSet: 哈希集合,存取无序,元素唯一,底层使用哈希算法实现存储和查询
i. LinkedHashSet: 链哈希表,存取顺序一致,元素唯一。可以想象成一个二维数组,第一维用链表实现,第二维用哈希算法实现(求大神补充纠正)
ii. TreeSet: 二叉树算法实现,元素唯一,可对元素实现排序;
然后是双列集合Map(键值成对),第一列为键Key,唯一;第二列为Value值
1、TreeMap:key集合为二叉树算法实现,可对key进行排序;
2、HashMap:key集合为哈希算法实现,可存Null键及Null值;
3、HashTable:key集合为哈希算法实现,不可存Null值与键
这些集合的核心算法数据结构就是 数组,链表,哈希,二叉树,楼主有兴趣可深入百度一下各个算法的特点和java代码实现,我这里不展开了哈
|