题解 | #把数组排成最小的数#
把数组排成最小的数
https://www.nowcoder.com/practice/8fecd3f8ba334add803bf2a06af1b993
import java.util.*; public class Solution { public String PrintMinNumber(int [] numbers) { //找出特殊情况 //空数组 if (numbers.length == 0) { return ""; } //数组长度为1 if (numbers.length == 1) { return numbers[0] + ""; } //转为字符串 String str = ""; String arr[] = new String[numbers.length]; for (int i = 0; i < numbers.length; i++) { arr[i] = numbers[i] + ""; } //排序 Arrays.sort(arr, new Comparator<String>() { //自定义排序,通过比较两个字符串的两种正反相加再进行大小排序 public int compare(String s1, String s2) { return (s1 + s2).compareTo(s2 + s1); } }); //累加到str for(int i=0;i<arr.length;i++){ str+=arr[i]; } return str; } }