您的位置:首页 > 理论基础 > 数据结构算法

关于java数据结构 在什么情况下使用什么样的数据结构的总结

2012-10-13 10:05 351 查看
什么情况下使用什么样的集合

1避免在链表中使用以整数索引来表示元素在集合中位置的所有方法,如果需要随驾访问集合,则使用arraylist或数组

2 散列映射表对键进行散列,树状映射表使用键的全局顺序进行排序,并组织成搜索树,

散列函数或比较函数智能作用于键,不能作用于值,

与散列集一样散列映射表的速度比较快,如果不需要按照顺序来访问键的话,就采用散列映射,

3,当你需要采用先进先出的原则来检索对象时,你就可以采用队列

4,如果你访问hashset的话,你可以保证其中的没个元素都会被访问到,但是不能确定访问顺序

5, Arraylist可以动态增长和缩减的索引序列

   LinkList可以在任何位置高效的插入和删除指定元素的有序序列

HashSet没有重复元素的无序集合

      TreeSet有序集//比散列集有所改进,他可以按照一定的顺序将元素插入到该集合,迭代时,按此顺序读出,

Enumset包含枚举元素的集合

LinkedHashSet可以记着插入元素顺序的集

PriorityQueue可以高效的移除最小元素的集合//以任意顺序读取,按排序顺序读取

HashMap 一种存储键值关联的数据结构

TreeMap键有序的map

EnumMap键属于枚举类型的map

Linkhashmap可以记着键值项被添加顺序的map

Weakhashmap该map中的值如果没有被调用,它将会被垃圾回收期回收

Identityhashmap该map中键用==而不是用equals

6在java编程语言中,所有的linklist都是双向的,即都有前驱和后继

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐