179.最大数
题目
给定一组非负整数,重新排列它们的顺序使之组成一个最大的整数。
示例 1:
输入: [10,2]
输出: 210
示例 2:
输入: [3,30,34,5,9]
输出: 9534330
方法
代码
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| class Solution { public static String largestNumber(int[] nums) { String res = ""; String[] strs = new String[nums.length]; for(int i = 0; i < nums.length; i++){ strs[i] = String.valueOf(nums[i]); } Arrays.sort(strs, new MyComparator()); if(strs[strs.length - 1].equals("0")) return "0"; for(int i = strs.length - 1; i >= 0; i--){ res += strs[i]; } return res;
} public static class MyComparator implements Comparator<String>{ @Override public int compare(String o1, String o2) { return (o1 + o2).compareTo(o2 + o1); } } }
|