Java中不同集合的时间复杂性

时间:2017-01-13 10:18:20

标签: java c++ stl time-complexity

竞争性编程中的大多数情况都需要在使用之前了解代码的复杂性。 我们在C ++编码中使用不同的库函数和STL。有一个关于STL复杂性的漂亮文档。

我想知道java中不同的内置泛型集合方法的复杂性(例如java.util.Arrays.sort()的复杂性)。是否有关于Java复杂性的适当文档?

提前致谢。

1 个答案:

答案 0 :(得分:1)

请仔细阅读官方Oracle文档,例如来自(https://docs.oracle.com/javase/7/docs/api/java/util/Arrays.html#sort(byte[])) -

的引用
  

实施说明:排序算法是Vladimir Yaroslavskiy,Jon Bentley和Joshua Bloch的双枢轴快速算法。该算法在许多数据集上提供O(n log(n))性能,导致其他快速排序降级为二次性能,并且通常比传统(单枢轴)Quicksort实现更快。

如您所见 O(n log(n))