算法:把数组排成最小的数
* @Description 把数组排成最小的数* @问题:输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。* 例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。* @思路:* 1:将数组转化为list;* 2:对list进行排序,重写compara构造方法,最小排序;* 3:对排序后的list进行累加;
package LG.nowcoder;import java.util.ArrayList; import java.util.Collections; import java.util.Comparator;/*** @Author liguo* @Description 把数组排成最小的数* @问题:输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。* 例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。* @思路:* @Data 2018-08-17 8:57*/ public class Solution13 {public String PrintMinNumber(int [] numbers) {int n;String s="";ArrayList<Integer> list=new ArrayList<Integer>();n=numbers.length;for(int i=0;i<n;i++){list.add(numbers[i]);//将数组放入arrayList中 }//实现了Comparator接口的compare方法,原来的compare方法是从小到大排序,所以需要重写;//将集合元素按照compare方法的规则进行排序Collections.sort(list,new Comparator<Integer>(){@Overridepublic int compare(Integer int1, Integer int2) {String s1=int1+""+int2;String s2=int2+""+int1;return s1.compareTo(s2) ; //对于string进行从小到大的排序; }});for(int j:list){s+=j;}return s;} }
转载于:https://www.cnblogs.com/liguo-wang/p/9491557.html
算法:把数组排成最小的数相关推荐
- 数据结构与算法--将数组排成最小的数
将数组排成最小的数 题目:输入一个正整数的数组,将数组中所有数字拼接在一起排列成一个新的数,打印能拼接出来的所有数字中最小的一个, 案例:输入数组{12,4,55},则能打印出最小的数组是:12455 ...
- [PHP] 算法-把数组排成最小的数的PHP实现
输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个.例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323.解法1 1.数组排序,使 ...
- printf打印数组_(45)C++面试之把数组排成最小的数
// 面试题45:把数组排成最小的数 // 题目:输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼 // 接出的所有数字中最小的一个.例如输入数组{3, 32, 321},则打印出这3 ...
- 【剑指offer-Java版】33把数组排成最小的数
把数组排成最小的数 难点在于比较规则的确定以及比较规则的正确性证明 比如:仅仅是局部的两个数字的顺序较小,如何保证整个数组按此规则进行排序后达到全局的较小 书中关于这一点的证明直接用的反证法,忘的差不 ...
- 33:把数组排成最小的数
/*** 面试题33:把数组排成最小的数* 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个.* 例如输入数组{3,32,321},则打印出这三个数字能排成的 ...
- 《剑指offer》-- 把数组排成最小的数、丑数、二进制中1的个数、表示数值的字符串、替换空格
一.把数组排成最小的数: 1.题目: 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个.例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为 ...
- 【LeetCode】剑指 Offer 45. 把数组排成最小的数
[LeetCode]剑指 Offer 45. 把数组排成最小的数 文章目录 [LeetCode]剑指 Offer 45. 把数组排成最小的数 package offer;import java.uti ...
- 列表转化成数组_30. 把数组排成最小的数
把数组排成最小的数 题目描述 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个.例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为3213 ...
- 面试题45. 把数组排成最小的数
题目: 面试题45. 把数组排成最小的数 题解: 1. 题解一: 2. 题解二: * 解题思路:* 先将整型数组转换成String数组,然后将String数组排序,最后将排好序的字符串数组拼接出来.关 ...
最新文章
- pandas dataframe数据聚合groupby、agg、privot基于sum统计详解及实例
- 19.12 添加自定义监控项目 19.13/19.14 配置邮件告警 19.15 测试告警 19.16 不发邮件的问题处理...
- 对口高考计算机原理,对口高考计算机原理5.doc
- 基于springboot框架的java学生管理系统
- 设置导航条上的主题一颜色
- C#多线程强制退出程序
- java写数据库连接_JAVA写简单的数据库连接池
- PCB 工程系统 模拟windows域帐号登入
- 打架打出来的牛逼城市!
- imx6ull设备树
- 测试5g网速的软件排行榜,2021网络测速app排行榜-手机网速测试软件推荐
- HTML5七夕情人节表白网页(花瓣相册表白) HTML+CSS+JavaScript 求婚示爱代码 520情人节告白代码 程序员表白源码 3D旋转相册 js烟花代码 css爱心表白
- adb 切换usb模式_adb调试命令,adb强制打开usb调试,adb命令打开usb调试
- 数据结构期末作业思路分享——库存管理小程序(云数据库)
- Recipe 1.5. Trimming Space from the Ends of a String(Python Cookbook)
- 程序员可迁移技能的培养
- 邵东一中2021年高考成绩查询,湖南邵阳2020高考成绩,邵东一中势头强劲,包揽邵阳市文理状元...
- vs2013编译报错,未能将obj/..复制到bin/..,bin/...文件正被另一进程时候用
- 快速切题 usaco ariprog
- java一个式子开根号语句_[基础篇]-基础知识整理-03-JAVA中的运算符
热门文章
- kafka php 0.8,php5.6 centos7 kafka0.8.1
- Mapreduce的序列化和流量统计程序开发
- Linux命令之ifconfig
- 前后端分离的思考与实践(二)
- BZOJ1922 SDOI2010 大陆争霸 最短路
- MySQL的安装及使用教程
- loadrunner11录制不成功解决方法(收集)
- 华为3Com Quidway 2116-SI
- Java自动注入默认_java – 自动注入与Spring
- 供应商寄售库存管理_【论文解读】物流联合外包下库存管理模式对供应链运作的影响...