1、集合框架
Collection(单列)子类有List(子类有:ArrayList 、 LinkedList)、Set(子类有:TreeSet 、HashSet)
Map(双列)子类有TreeMap、HashTable、HashMap
2、Set(TreeSet 、HashSet)
迭代 (中序输出)
遍历(先序(根左右)、中序(左根右)、后序(左右根))
first() add() …
import java.util.*;
public class Test {
public static void main(String[] args){
TreeSet t = new TreeSet();
t.add(2);
t.add(3);
t.add(1);
t.add(4);
t.add(5);
Iterator it = t.iterator();
while (it.hasNext()){
System.out.print(it.next()+" ");
}
HashSet t = new HashSet();
t.add("我");
t.add("爱");
t.add("你");
t.add("中");
t.add("国");
Iterator it = t.iterator();
while (it.hasNext()){
System.out.print(it.next()+" ");
}
}
3、set与List比较:
list有序(指输出顺序与输入顺序一致)、可重复、可以有null值;
set无序、set不可重复、set不允许有null值;
4、树(一些节点的集合):
根、树叶(没有儿子的节点)、兄弟(具有相同父亲的节点、 祖父、孙子、路、路径的长(该路径上的边的条数)、深度(n1的深度为从根到n1的唯一路径的长)、高(n1的高是n1到一片树叶的最长路径的长)、祖先、后裔、真祖先、真后裔
5、二叉树:每个节点最多有两个孩子节点(左孩子和右孩子)
二叉查找树:左孩子<根<右孩子
AVL树(平衡树):单旋和双旋
6、红黑树:
① 每一个节点或者着成红色、或者着成黑色;
② 根是黑色的;
③ 如果一个节点是红色的,那么它的子节点必须是黑色的;
④ 从一个节点到一个null引用的每一条路径必须包含相同数目的黑色节点。