剑指 Offer 第45题:把数组排成最小的数

2022-08-04  本文已影响0人  放开那个BUG

1、前言

题目描述

2、思路

自定义排序规则:a + b < b + a,然后整个数组就是最小的排在前面。

3、代码

class Solution {
    public String minNumber(int[] nums) {
        if(nums == null || nums.length == 0){
            return "";
        }

        Integer[] array = Arrays.stream(nums).boxed().toArray(Integer[]::new);
        Arrays.sort(array, (o1, o2) -> (o1 + String.valueOf(o2)).compareTo(o2 + String.valueOf(o1)));
        StringBuilder res = new StringBuilder();
        for (int num : array) {
            res.append(num);
        }
        return res.toString();
    }

}
上一篇 下一篇

猜你喜欢

热点阅读