youngik

정렬 (가장 큰 수) 본문

programmers

정렬 (가장 큰 수)

youngik 2021. 4. 17. 14:19

처음부터 많이 헤매였던 문제이기도 하고, 도저히 정렬방법에 대해서 생각을 못하다가

간단히 어떻게 정렬을 해야되는지 힌트를 보고나서 쉽게 풀었던 문제였던 것 같다.

처음에 내가 생각했던건 1의자리수부터 비교해서 높은 순서대로 나열을 하고

이후에 동일한 1의 자리수를 가진 값들을 내림차순으로 정렬을 했는데,, (반례 : 300,30,3)

10, 100단위로 떨어지는 수들은 가장 작은 값들이 먼저 와야하기 때문에 만족을 하지 못했다.

 

그래서 가장 쉬운 방법은 compare() 함수를 이용해서 Integer타입을 String으로 받아온 후에

s1+s2가 큰 지, s2+s1이 큰지 비교해서 정렬하는 것이다. (ex) 3, 40이 있다면 340이 큰지, 403이 큰지)

 

사실상 위 코드는 다른분의 코드를 가져온 것이며, 내가 작성한 코드와는 조금 다른 부분이 있다.

위 코드는 더욱 깔끔하게 구성된 풀이이기에 보고 참고하면 좋을것 같다.

'programmers' 카테고리의 다른 글

완전탐색 (소수 찾기)  (0) 2021.04.18
힙 (이중우선순위큐)  (0) 2021.04.18
해시 (베스트앨범)  (0) 2021.04.17
힙 (더 맵게)  (0) 2021.04.12
해시 (위장)  (0) 2021.04.10
Comments