设数组 numsnums 中任意两数字的字符串为 xx 和 yy ,则规定 排序判断规则 为:
若拼接字符串 x + y > y + xx+y>y+x ,则 xx “大于” yy ;
反之,若 x + y < y + xx+y<y+x ,则 xx “小于” yy ;
若拼接字符串 x + y > y + xx+y>y+x ,则 xx “大于” yy ;
反之,若 x + y < y + xx+y<y+x ,则 xx “小于” yy ;
import java.util.ArrayList;
import java.lang.*;
import java.util.*;
public class Solution {
public String PrintMinNumber(int [] numbers) {
String[] str = new String[numbers.length];
for(int i = 0;i < numbers.length;i++){
str[i] = String.valueOf(numbers[i]);
}
// 比较
Arrays.sort(str, (x, y)->(x+y).compareTo(y+x));
StringBuilder sb = new StringBuilder();
for(int i = 0;i < str.length;i++){
sb.append(str[i]);
}
return sb.toString();
}
}

京公网安备 11010502036488号