public String largestNumber(int[] num) {
        if (num == null || num.length == 0) {
            return null;
        }
        String[] str = new String[num.length];
        for (int i = 0; i < num.length; i++) {
            str[i] = String.valueOf(num[i]);
        }
        Arrays.sort(str, new Comparator<String>(){
            public int compare(String s1, String s2) {
                return (s2 + s1).compareTo(s1 + s2);
            }
        });
        StringBuilder sb = new StringBuilder();
        for (int i = 0; i < str.length; i++) {
            sb.append(str[i]);
        }
        String res = sb.toString();
        if (res.charAt(0) == '0') return "0";
        return res;
    }

results matching ""

    No results matching ""