TIL/알고리즘

[JAVA] 프로그래머스 | 12933 정수 내림차순으로 배치하기

쑤키다요 2025. 4. 15. 20:52

📝 TIL

- [프로그래머스] 12933 정수 내림차순으로 배치하기

 

제한사항

n은 1이상 8000000000 이하인 자연수입니다.

 

입출력 예

입력#1

118372

 

출력#1

873211


🦔 설계 및 시도

주어진 long n을 문자열로 변환하고 문자 단위로 자르고,

큰 순서대로 정렬해서 합치기

 


 

💡 풀이 소스 코드

 

시간복잡도 :  O(n log n)

공간복잡도 : O(n)

 

import java.util.*;
class Solution {
    public long solution(long n) {
        long answer = 0;
        String num = Long.toString(n);
        String[] number = num.split("");
        
        Arrays.sort(number, (a, b) -> b.compareTo(a));
        
        return Long.parseLong(String.join("", number));
    }
}

 


🚀 새로 배운 내용

- String.join()에 익숙해지자

- Integer.parseInt(), Long.parseLong() 등 다양한 타입에 맞춰서 쓰자

 

 


😺  느낀점

- 자바에서는 명시적으로 타입 변환이 많다 주의하자!

 

 


*소스 코드는 다음 깃허브에 올라옵니다 -
 https://github.com/s0ooo0k/Algorithm_Study

 

GitHub - s0ooo0k/Algorithm_Study: Algorithm Study 문제 및 풀이

Algorithm Study 문제 및 풀이. Contribute to s0ooo0k/Algorithm_Study development by creating an account on GitHub.

github.com