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

把数组排成最小的数

http://www.nowcoder.com/practice/8fecd3f8ba334add803bf2a06af1b993

import java.util.*;

public class Solution {
    public String PrintMinNumber(int [] numbers) {
        if(numbers == null || numbers.length == 0){
            return "";
        }
        String[] ss = new String[numbers.length];

        for(int i = 0; i < numbers.length; ++i){
            ss[i] = String.valueOf(numbers[i]);
        }

        Arrays.sort(ss, new Comparator<String>(){
            // 多元素排序问题-->2个元素排序问题-->(str1+str2).compareTo(str2+str1);
            public int compare(String s1, String s2){
                String str1 = s1 + s2;
                String str2 = s2 + s1;
                return str1.compareTo(str2);
            }
        });
        StringBuilder sb = new StringBuilder();
        for(String s : ss){
            sb.append(s);
        }
        return sb.toString();
    }
}
全部评论

相关推荐

01-21 12:26
暨南大学 golang
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务