题目描述
输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。
import java.util.*;
public class Solution {
public String PrintMinNumber(int [] numbers) {
if(numbers==null||numbers.length==0)return "";
String[]strArr=new String[numbers.length];
for(int i=0;i<numbers.length;i++){
strArr[i]=numbers[i]+"";
}
//按字符串和排序
Arrays.sort(strArr,(S1,S2)->(S1+S2).compareTo(S2+S1));
String res="";
for(String s:strArr)
res+=s;
return res;
}
}