1.1基本概念
1.2相关知识
1.2.1集合与链表数组等数据结构区别
之前学习的链表和动态数组是不需要遍历这个接口的
因为他们有索引这一概念所以不需要 而集合这一数据结构 需要使用遍历这一接口的
1.2.2两种实现方式
集合有两种实现方式 第一种通过链表 另外一种通过红黑树实现
1.2.3两种方式性能对比
红黑树实现的集合性能优于链表实现的集合
相关实例 遍历JAVA源码并添加单词到集合中
1.2.4红黑树实现的集合缺陷
用红黑树实现集合 要求 元素必须具备可比较性
用链表和数组实现的集合 对元素不要求任何限制
1.3 相关练习题
https://leetcode-cn.com/problems/intersection-of-two-arrays/
2.代码实现
set 接口
public interface Set<E> { int size(); boolean isEmpty(); void clear(); boolean contains(E element); void add(E element); void remove(E element); void traversal(Visitor<E> visitor); public static abstract class Visitor<E> { boolean stop; public abstract boolean visit(E element); } }