생각정리

Arrays.sort()와 Collections.sort()

puy0 2023. 4. 27. 06:12

알고리즘 sort 문제를 풀었다

간단한 문제였기 때문에

평소에 궁금했던 빠른 입출력의 시간차이를 알아보기 좋다고 생각했다

 

Scanner 보다는 bufferedReader 가 빠른것은 당연하다
bufferedWriter와 StringBuilder 중
StringBuilder 가 더 빠르다
굳이 bufferWriter를 사용할 필요는 없다

 

그리고 이 문제에서 요구하는?

1. Arrays.sort 와

2. Collections.sort를 비교해봤다

 

1은 배열을 정렬하는, 2는 리스트를 정렬한다

나는 BufferedReader + Arrays.sort + BufferedWriter

BufferedReader + Collections.sort + BufferedWriter

로 비교해봤다

둘의 큰 차이는없었다

BufferedWriter 보다 StringBuilder를 사용하는것이 더 의미 있는정도 였다

 

이문제의 테스트케이스가 별 차이 없었던 걸까?

Arrays.sort의 경우 안좋은경우 시간이 Collections.sort보다 더 걸릴 수 도 있는거지

무조건  Collections.sort 가 좋다 는건 아니라고 생각한다

 

물론 더빠른것이 있다면 그것을 많이 사용하겠지만

배열을 사용하기 좋은 문제에 리스트를 써가며 Collections.sort 를써줄 필요는 없다고 생각했고

배열엔 1을, 리스트에는 2를 써주었다

 

 

 

 

 

참조: 

https://www.linkedin.com/pulse/difference-btw-arrayssort-collectionssort-terala-chittibabu

 

Difference Btw Arrays.sort() and Collections.sort() ?

Arrays.sort(): Arrays.

www.linkedin.com

https://yuja-kong.tistory.com/183

 

[Java] Arrays.sort()와 Collections.sort()의 시간복잡도 비교

알고리즘을 풀다가 흔하디 흔한 sort() 정렬의 차이가 궁금해졌다. 보편적으로 배열을 정렬할 땐 Arrays.sort(), 컬렉션(List,Set..)을 정렬할 땐 Collections.sort()를 사용한다. 찾아보니 같은 sort 메서드지

yuja-kong.tistory.com