后端岗位面试题更新 2026-08-05

Java 中 Collections.sort 对 List 排序时底层使用了什么排序算法?不同数据量或数据特征下如何选择?

运满满后端开发互联网/IT技术原理方案权衡Java

考察说明

考察排序算法原理与 JDK 实际实现的选择逻辑

回答思路

  1. 能说明 Collections.sort 实际委托给 List.sort,Arrays.sort 等实现
  2. 能区分不同集合类型(如 ArrayList 与 LinkedList)的差异
  3. 能说出小数据量用插入排序、大数据量用双轴快速排序或归并排序
  4. 能解释为对象排序时使用 TimSort(归并排序变体)以保持稳定性