Java.util.stream.Stream<T>.sorted()
2022-09-02 09:27:22
有谁知道时间复杂度是什么?java.util.stream.Stream<T>.sorted()
有谁知道时间复杂度是什么?java.util.stream.Stream<T>.sorted()
好吧,它本身就是O(1),因为它是一个中间操作,不消耗流,而只是向管道添加一个操作。sorted()
一旦流被终端操作使用,就会发生排序,并且
Arrays.sort()
Arrays.parallelSort()
从 JDK 8 开始,用于顺序排序的标准流 API 实现中的主要排序算法是 TimSort。它最坏的情况是 ,但如果数据是预排序的(正向或反向)或部分预排序(例如,如果您连接两个排序的列表并再次排序),则它的工作速度非常快(具有非常小的常量)。O(n log n)
O(n)