[프로그래머스] Level.1 정수 내림차순 배열

박의진·2022년 9월 10일
0

코딩테스트

목록 보기
13/25
class Solution {
    public long solution(long n) {
        long answer = 0;
        String digit = String.valueOf(n);
        int count = digit.length();
        long[] arr = new long [count];
        long num = (long) Math.pow(10,count-1);
        String newDigit="";
        long newNum;
        long max = 0;
        
        for(int i=0; i< count; i++){
            newNum = Long.parseLong(digit);
            arr[i] = newNum / num;
            digit = digit.substring(1,digit.length());
            num = num/10;
        
        }
        
        for(int i=0; i<count; i++){
            for(int j=0; j<count-1; j++){
                if(arr[j]<arr[j+1]){
                    long temp = arr[j];
                    arr[j] = arr[j+1];
                    arr[j+1] = temp;
                }
            }
        }
         
        for(int i =0;i <count; i++){
            newDigit += String.valueOf(arr[i]);
        }
        answer = Long.parseLong(newDigit);    
    

        
        return answer;
    }
}

테스트 케이스는 모두 통과했지만 너무 효율성이 떨어지는 코드다. 수정 요망

profile
주니어 개발자의 개발일지

0개의 댓글