牛客网 | 把数组排成最小的数

来源:互联网 发布:ibm软件 文件系统 编辑:程序博客网 时间:2024/05/02 19:13

输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。

public class Solution {    public String PrintMinNumber(int [] numbers) {        Arrays.sort(numbers);        String res = "";        for (int i = 0; i < numbers.length; i++) {            res = compare(res,numbers[i]);        }        return res;    }    public String compare(String nums1,int nums2)    {        String str1 = nums1 + "" + nums2;        String str2 = nums2 + "" + nums1;        if(str1.compareTo(str2)<0)            return str1;        else            return str2;    }}


0 0