《假如正在面试》集合篇:Collections.sort底层排序方式是什么?

个人理解

Collections.sort底层排序方式

首先先判断需要排序的数据量是否大于60。

小于60:使用插入排序,插入排序是稳定的

大于60的数据量会根据数据类型选择排序方式:

  • 基本类型:使用快速排序。因为基本类型。1、2都是指向同一个常量池不需要考虑稳定性。
  • Object类型:使用归并排序。因为归并排序具有稳定性。

 

注意:不管是快速排序还是归并排序。在二分的时候小于60的数据量依旧会使用插入排序

后话

今年我从福州跳槽到了杭州,准备面试的过程中,最痛苦的事情莫过于八股文太枯燥,非常容易忘记,面试过程中明明感觉问题有印象,但是又讲不明白。

《假如正在面试》集合篇:Collections.sort底层排序方式是什么?

在我面试的过程中,整理了不少面经,索性将每个知识点拆分成问答的形式,自问自答。平时只需要经常看看错题,可以节省不少的时间,如果你也考虑换工作,不妨尝试一下这个方法。

《假如正在面试》集合篇:Collections.sort底层排序方式是什么?

面试题和答案都是日常整理的,难免有瑕疵,如果有误,欢迎大佬们指正。

详细面试题整理:http://s.tomxin.cn/interview/index.html

上一篇:Collections集合工具类的常用方法


下一篇:Java泛型、集合框架List接口、迭代器Iterator和Collections工具类的综合实战训练