Java

Arrays.sort() vs Collections.sort()

snail voyager 2020. 2. 8. 14:50
728x90
반응형

Arrays.sort(double[]), Arrays.sort(int[]), Arrays.sort(char[]), Arrays.sort(long[]), Arrays.sort(float[]), Arrays.sort(byte[]) : DualPivotQuicksort (JDK 7)

 

Collections.sort(List), Collection.sort(List, Comparator), Arrays.sort(Object[]) :
Collections.sort는 Arrays.sort를 호출하여

Arrays.legacyMergeSort, ComparableTimSort 사용

 

시간 복잡도

  Timsort Introsort Merge sort Quicksort Insertion sort Selection sort Smoothsort
Best case O(n)   O(n log n)  O(n log n) O(n) O(n^2) O(n)
Average case O(n log n) O(n log n) O(n log n) O(n log n) O(n^2) O(n^2) O(n log n)
Worst case O(n log n) O(n log n) O(n log n) O(n^2) O(n^2) O(n^2) O(n log n)

 

공간 복잡도

  Timsort Merge sort Quicksort Insertion sort Selection sort Smoothsort
Space complexity O(n) O(n) O(log n) O(1) O(1) O(1)

 

* 출처

http://iloveulhj.github.io/posts/java/java-collection-sort.html

https://en.wikipedia.org/wiki/Sorting_algorithm

728x90
반응형