一、总分类
1.存储结构主要分为:顺序存储结构(集合)——树——图,它们的存储结构主要分为:链表和线性表(数组方式);
2.顺序存储结构的上层数据类型为:栈(Stack)/队列(Queue)/列表(List),这三种数据类型可以分别用链表和线性表实现;
关于列表:有序列表、无序列表、索引列表,其中有序列表基于某个关键之排序;
索引列表和无序列表都是无序的,但是索引列表的每个元素每个元素都有其对应的索引;
3.java集合中列表API的实现
这些实现都是索引列表——
Vector接口——基于数组实现,同步
ArrayList——基于数组实现,非同步
LinkedList——基于链表的实现
三种列表实现的接口有:Collection、List、Cloneable、Serializable;
除了上面的三种接口外,LinkedList还实现了Queue接口和Deque接口;
4.树
平衡二叉树
java集合API提供了两种平衡二叉超找树实现:TreeSet和TreeMap,这两种实现都用到红黑树的实现方式;——换 言之,它们两个是用平衡查找树实现的;
堆
堆是一种完全二叉树,其每个节点都小于或等于其子节点;