java数据结构有8种,如下所示,以下从使用场景,优缺点方面讲解。
1 数组array
使用场景:有序的存储同一类型数据的集合,固定大小
优点:通过索引查找方便
缺点:插入或删除一个值时,改变值之后的索引都需要更新,故操作复杂。
array
2 栈stack
使用场景:限定仅在表尾进行插入或是删除的线性表,先进后出
3 队列queue
queue包路径java.util.queue,是一个接口,父类collection,常用方法有
add offer remove poll element peek
4 链表list
使用场景:存储可变空间的非连续非顺序的一类数据。
优点:添加删除操作简单
缺点:访问时需要遍历,故速度慢
list包路径java.util.arraylist,默认初始容量10
5 树tree
6 堆heap
7 图graph
8 散列表hash
使用场景:根据关键码值进行访问的数据结构。
map包路径java.util.hashmap,默认初始容量16,加载因子0.75