剑指 Offer 45. 把数组排成最小的数

package leetcode;

import java.util.Arrays;
import java.util.Comparator;

public class offer_45 {
    public String minNumber(int[] nums) {
        String[] str=new String[nums.length];
        String s="";
        for(int i=0;i<nums.length;i++) {
            str[i]=String.valueOf(nums[i]);
        }
        //判断a+b<b+a是否正确来排序
        Arrays.sort(str,new Comparator<String>() {
            //重写comapre方法
            public int compare(String a,String b) {
                return (a+b).compareTo(b+a);
            }
        });
        for(String ss:str) {
            s=s+ss;
        }
        return s;
    }
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        offer_45 off=new offer_45();
        int[] nums= {97,41,90,86,43,89,43,52,38,5};
        System.out.println(off.minNumber(nums));
    }

}

 

posted on 2022-03-17 16:46  一仟零一夜丶  阅读(21)  评论(0)    收藏  举报