题目描述
剑指 Offer 45. 把数组排成最小的数
输入一个非负整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。
示例 1:
输入: [10,2]
输出: “102”
示例 2:
输入: [3,30,34,5,9]
输出: “3033459”
Java
class Solution {
public String minNumber(int[] nums) {
List<String> list=new ArrayList<>();
for(int num:nums){
list.add(String.valueOf(num));
}
list.sort((o1,o2)->(o1+o2).compareTo(o2+o1));
return String.join("",list);
}
}
该博客介绍了如何使用Java解决将非负整数数组元素拼接成最小数字的问题。示例代码中,通过将数组元素转换为字符串,然后自定义比较器进行排序,最后连接字符串得到最小数字。这种方法有效地解决了数字组合的排序问题。
203

被折叠的 条评论
为什么被折叠?



