美文网首页
数据结构与算法

数据结构与算法

作者: RobinYeung | 来源:发表于2018-09-13 22:32 被阅读11次

    一、集合

    基本集合
    • Collection
      • List 有序,可重复,索引速度快;插入删除速度慢
      • Set 无序,不可重复。位置由HashCode决定并由此判断是否重复
    • Map 键唯一,值多个

    ArrayList LinkList

    • ArrayList 基于数组,索引快,增删慢
    • LinkedList 索引慢,增删快

    ArrayList Vector

    • Vector 线程安全,可以设置增长因子,效率低
    • ArrayList 非线程安全

    HashMap扩容

    • 容器中元素个数大于等于阈值,就自动扩容

    二、排序

    • Arrays.sort函数。对于基础类型,底层使用快速排序。对于非基础类型,底层使用归并排序。请问是为什么?
    • 答:这是考虑到排序算法的稳定性。对于基础类型,相同值是无差别的,排序前后相同值的相对位置并不重要,所以选择更为高效的快速排序,尽管它是不稳定的排序算法;而对于非基础类型,排序前后相等实例的相对位置不宜改变,所以选择稳定的归并排序。

    相关文章

      网友评论

          本文标题:数据结构与算法

          本文链接:https://www.haomeiwen.com/subject/bloggftx.html