我总是无脑做题 然后测试用例过了10% 无语了 好菜
好好学吧 害 和剑指offer里面的类似 只不过一个是最小一个最大 都是排序 核心思想就是贪心
剑指 Offer 45. 把数组排成最小的数
不过找最大数数要注意 第一个数为零的话 直接返回字符串“0”
class Solution {
public String largestNumber(int[] nums) {
String[] s = new String[nums.length];
for(int i = 0; i < nums.length; i++){
s[i] = String.valueOf(nums[i]);
}
Arrays.sort(s, (x, y) -> (y + x).compareTo(x + y));
//如果排序后的第一个元素是0,那后面的元素肯定小于或等于0,则可直接返回0
if(s[0].equals("0")) return "0";
StringBuffer ans = new StringBuffer();
for(String as : s){
ans.append(as);
}
return ans.toString();
}
}