题解 | #把数组排成最小的数#

把数组排成最小的数

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;
    }
}

全部评论

相关推荐

01-26 18:45
门头沟学院 Java
一天代码十万三:哥们实习再包一下吧,产出太笼统了,尽量体现业务
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务