Arrays.sort()와 Collertions.sort()가 사용하는 정렬 알고리즘에 대해 알아보자.

SionBackEnd·2023년 2월 27일
0

소개

정렬알고리즘에 대해서 공부하던중 흔히 사용해 왔던 Arrays.sort()Coolections.sort() 메서드들이 사용하는 알고리즘이 문뜩 궁금해졌다.
같이 한번 알아보자.

Arrays.sort()

배열을 정렬할때 흔히 사용해왔던 Arrays.sort()메서드..
기본 자료형 에서는 Arrays.sort() 메서드가 Dual-Pivot Quick Sort 알고리즘을 사용하고, 참조형에서는 Tim Sort 알고리즘을 사용한다.

  1. 기본 자료형에서는 Dual-Pivot Quick Sort 알고리즘을 사용한다.
  2. 참조형에서는 Tim Sort알고리즘을 사용한다.

Collections.sort()

Collection 인터페이스를 상속하는 List에서 주로 사용했던 기억이 크다. 그렇다면 어떤 알고리즘을 사용할까?
Collections.sort()는 Tim sort알고리즘을 사용한다고 한다.

정리

정리를 하자면, 자바 11버전에서는 Arrays.sort는 자료형에 따라서 기본 자료형은 Dual Pibot Quick Sort 알고리즘, 참조 자료형은 Tim Sort 알고리즘을 사용하며 Collections.sort는 Tim Sort 알고리즘만을 사용한다고 정보를 얻게 되었다.

이후

여기에 나온 알고리즘들을 따로 블로그에 정리한 적이 없어서 차후에 여기에 적히 알고리즘들에 대해서 정리하는 글을 작성하겠다.

profile
많은 도움 얻어가시길 바랍니다!

0개의 댓글