【力扣】179. 最大数
发布日期:2021-06-29 19:47:12
浏览次数:3
分类:技术文章
本文共 1139 字,大约阅读时间需要 3 分钟。
题目:给定一组非负整数 nums,重新排列每个数的顺序(每个数不可拆分)使之组成一个最大的整数。
注意:输出结果可能非常大,所以你需要返回一个字符串而不是整数。
示例 1:
输入:nums = [10,2]
输出:“210” 示例 2:输入:nums = [3,30,34,5,9]
输出:“9534330” 示例 3:输入:nums = [1]
输出:“1” 示例 4:输入:nums = [10]
输出:“10”提示:
1 <= nums.length <= 100
0 <= nums[i] <= 109答案:
class Solution { public String largestNumber(int[] nums) { int count0 = 0; Listlist = new ArrayList<>(); for(int n : nums){ if(n == 0) count0++; list.add(String.valueOf(n)); } list.sort((o1, o2) -> (o2 + o1).compareTo(o1 + o2));//比较器-相当于: /*list.sort(new Comparator () { @Override public int compare(String o1, String o2) { return (o2 + o1).compareTo(o1 + o2); } });*/ //compareTo:如果指定的数与参数相等返回0.如果指定的数小于参数返回 -1((o2+o1)<(o1+o2))。如果指定的数大于参数返回 1。 //Comparator:假如o1的值大于o2,你返回1,此时调用Collections.sort()函数就是升序;假如o1的值大于o2,你返回-1,此时调用Collections.sort()函数就是降序。o1-o2为升序序排列,o2-o1为降序排列,若具体到某一字段,则根据该字段进行排列 if(count0 == nums.length) return String.valueOf(0); return String.join("", list);//list中每个元素用""连接 }}
转载地址:https://darkness.blog.csdn.net/article/details/115614745 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
能坚持,总会有不一样的收获!
[***.219.124.196]2024年04月30日 21时26分40秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
javascript - 数据处理
2019-04-30
css ===== text-decoration
2019-04-30
css ===== white-space
2019-04-30
uniApp - 商城项目 - 1 项目搭建
2019-04-30
uniApp - 商城项目 2 - 底部导航
2019-04-30
CentOS7增加或修改SSH端口号
2019-04-30
Android回弹阻尼效果的简单实现,非基于ListView,ScrollView
2019-04-30
CentOS7部署轻量级web服务器nginx+php
2019-04-30
Android Studio爬过的坑
2019-04-30
Android签名生成和Android签名格式转换工具(MD5和SHA1签名)
2019-04-30
玩转Android Studio自定义模板插件-MVP模板为例
2019-04-30
reactNative 加载图片
2019-04-30
HTTP response报文结构
2019-04-30
css sprite是什么、有什么优缺点
2019-04-30
清除浮动的⼏种⽅式
2019-04-30
CSS在性能优化方面的实践
2019-04-30
CSS3动画(简单动画的实现,如旋转等)
2019-04-30
base64的原理及优缺点
2019-04-30
几种常见的CSS布局
2019-04-30
stylus/sass/less区别
2019-04-30