集合(Set)

集合的定义:

由一个或者多个确定的元素所构成的整体。

特点:

1,不存在重复元素

2,一般用于去重(比如一本书中统计词汇,统计访问网站的ip)

实现:

可使用动态数组,链表,二叉搜索树等实现集合。

ListSet(使用链表) TreeSet(使用红黑树) HashSet(哈希表)

复杂度分析:

TreeSet: 添加,删除,查找时间复杂度都是 O(logN)

ListSet : 添加,删除,查找时间复杂度都是O(logN)

HashSet: 添加,删除,查找时间复杂度都是O(logN)

TreeMap局限性:

元素必须具备可比较性,如果没有可比较性, 无法使用TreeMap。因为二叉搜索树中的元素必须具备可比较性。