把数组排成最小的数
2016-03-04 00:47
288 查看
把数组排成最小的数
参与人数:1460时间限制:1秒空间限制:32768K
本题知识点: 数组
算法知识视频讲解
输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。
解析:要把他拼接起来比较,排序一下就好了,此处偷懒使用简单冒泡排序
参与人数:1460时间限制:1秒空间限制:32768K
本题知识点: 数组
算法知识视频讲解
题目描述
输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。解析:要把他拼接起来比较,排序一下就好了,此处偷懒使用简单冒泡排序
package com.lp; import java.util.ArrayList; public class Solution { public String PrintMinNumber(int [] numbers) { for(int i=1;i<numbers.length;i++){ for(int j=1;j<=numbers.length-i;j++){ //System.out.println((""+numbers[j]+numbers[j-1]+"后加前")); if(((""+numbers[j-1]+numbers[j]).compareTo(""+numbers[j]+numbers[j-1]))>0 ){ int t; t=numbers[j-1]; numbers[j-1]=numbers[j]; numbers[j]=t; } } } String anString=""; for(int i=0;i<numbers.length;i++){ anString+=numbers[i]; } return anString; } public static void main(String[] args) { Solution s = new Solution(); int[] a = {3,5,1,4,2}; System.out.println(s.PrintMinNumber(a)); } }
相关文章推荐
- 获取设备的主机名和ip地址
- 生成修改记录
- 内核学习入门
- MTK 10A 新特性学习
- 记住:你应该努力去追求幸福
- 电池电量显示 MTK 09B
- Ubuntu下Android应用程序开发环境搭建
- Android应用开发记录
- Vision GUI programming products
- centos下添加环境变量和启动apache
- C/C++程序员必须熟练应用的开源项目
- 使用shell脚本删除当前目录下.c文件对应的可执行文件
- vmware installtion and configuration for linux
- Linux驱动开发必看详解神秘内核(完全转载)
- MTK TAB页面的实现
- MTK 09B 新特性学习
- 遍历文件,寻找错误信息
- Android学习网站,资料推荐,学习经验共享
- caffe之(一)卷积层
- Ajax数据格式,html,xml,json