💻 IT/📌 ALG

[프로그래머스] 가장 큰 수 :: 정렬 이용하자

GODSU 2021. 8. 15. 16:16
반응형

 

 

프로그래머스 Lv2 정렬 문제 '가장 큰 수' 입니다. 

정렬을 이용해서 간단하게 구현하였습니다.

 

 

 

코딩테스트 연습 - 가장 큰 수

0 또는 양의 정수가 주어졌을 때, 정수를 이어 붙여 만들 수 있는 가장 큰 수를 알아내 주세요. 예를 들어, 주어진 정수가 [6, 10, 2]라면 [6102, 6210, 1062, 1026, 2610, 2106]를 만들 수 있고, 이중 가장 큰

programmers.co.kr

import java.util.ArrayList;

class Solution {
    public String solution(int[] numbers) {
            String result = "";
            ArrayList<String> numberList = new ArrayList<>();

            //Int to String
            for (int i = 0; i < numbers.length; i++) {
            	numberList.add(String.valueOf(numbers[i]));
			}

            numberList.sort((num1,num2)-> (num2+num1).compareTo(num1+num2));
            
            for (String string : numberList) {
				result += string;
			}
            while (result.length() > 1 && result.charAt(0) == '0'){
                result = result.substring(1);
            }
            return result;
    }
}
반응형