[프로그래머스] 가장 큰 수 (java)

HaYeong Jang·2021년 2월 27일
0
post-thumbnail
post-custom-banner

🔗 문제링크

https://programmers.co.kr/learn/courses/30/lessons/42746

👩🏻‍💻 코드

import java.io.*;
import java.util.*;

class Solution {
    public String solution(int[] numbers) {
        String answer = "";
        String[] str_arr = new String[numbers.length];

        for (int i = 0; i < numbers.length; i++) {
            str_arr[i] = String.valueOf(numbers[i]);
        }

        Arrays.sort(str_arr, new Comparator<String>() {
            @Override
            public int compare(String o1, String o2) {
                return (o2 + o1).compareTo(o1 + o2);
            }
        });

        for (String s : str_arr) {
            answer += s;
        }

        return str_arr[0].equals("0") ? str_arr[0] : answer;
    }
}

📝 정리

혼자서 풀 때 Arrays.sort에서 compare 부분을 열심히 수정해봤지만 계속해서 틀렸습니다가 나왔다.
구글 선생님의 도움을 받았더니 (뒤 문자열 + 앞 문자열).compareTo(앞 문자열 + 뒤 문자열)라는 좋은 방법이 있었다.. 혼자서 생각해내지 못한 게 아쉽다. 흑 🥲

profile
기억하기 위해 기록하는 개발로그👣
post-custom-banner

0개의 댓글