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

题目:

输入一个非负整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。

 

示例 1:

[10,2]
102"

示例 2:

[3,30,34,5,9]
3033459"

 

提示:

  • 0 < nums.length <= 100

说明:

代码:

复制代码
 1 class Solution {
 2     public String minNumber(int[] nums) {
 3     List<String> list =new ArrayList();
 4     for(int num:nums){
 5         list.add(num+"");
 6     }
 7    list.sort(new Comparator<String>(){  
 8             @Override
 9             public int compare(String s1,String s2){
10                 return (s1+s2).compareTo(s2+s1);
11             }
12 
13         });
14         return String.join("",list);
15     }
16 }
复制代码

 

posted @   堤苏白  阅读(51)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 字符编码:从基础到乱码解决
· 提示词工程——AI应用必不可少的技术
点击右上角即可分享
微信分享提示