Java实现:n个正整数,将它们连接成一排,组成一个最大的多位整数。(输入:n(n个整数),依次输入n个整数)
来源:互联网 发布:陈克礼枪毙 知乎 编辑:程序博客网 时间:2024/06/05 09:41
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
int[] array = new int[n];
for (int i = 0; i < array.length; i++) {
array[i] = in.nextInt();
}
for(int i = 0; i < n-1-j; i++){
if(compareInt(array[i],array[i+1]) < 0){
int temp = array[i+1];
array[i+1] = array[i];
array[i] = temp;
}
}
}
for(int i = 0; i < n; i++){
System.out.print(array[i]);
}
System.out.println();
}
}
/**
* 自定义整数比较方法
* @param num1
* @param num2
* @return
*/
public static int compareInt(int num1,int num2){
String str1 = num1 + "";
String str2 = num2 + "";
int temp1 = Integer.parseInt(str1+str2);
int temp2 = Integer.parseInt(str2+str1);
return temp1 - temp2;
}
}
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int n = in.nextInt();
int[] array = new int[n];
for (int i = 0; i < array.length; i++) {
array[i] = in.nextInt();
}
//第一次,将最小值放到数组最后一个位置
//第二次,将第二小值放到数组倒数第二个位置
//依次类推,最后数组降序排列
//注意:这里的大小顺序是为满足题设要求自定义的一种比较方式(即为了连接组成最大多位数而定义的一种排序规则)
for(int j = 0; j < n-1; j++){for(int i = 0; i < n-1-j; i++){
if(compareInt(array[i],array[i+1]) < 0){
int temp = array[i+1];
array[i+1] = array[i];
array[i] = temp;
}
}
}
for(int i = 0; i < n; i++){
System.out.print(array[i]);
}
System.out.println();
}
}
/**
* 自定义整数比较方法
* @param num1
* @param num2
* @return
*/
public static int compareInt(int num1,int num2){
String str1 = num1 + "";
String str2 = num2 + "";
int temp1 = Integer.parseInt(str1+str2);
int temp2 = Integer.parseInt(str2+str1);
return temp1 - temp2;
}
}
0 0
- Java实现:n个正整数,将它们连接成一排,组成一个最大的多位整数。(输入:n(n个整数),依次输入n个整数)
- 设有n个正整数 (n<=20), 将它们连接成一排, 组成一个最大的多位整数
- 设有n个正整数,将他们连接成一排,组成一个最大的多位整数。
- 设有n个正整数,将他们连接成一排,组成一个最大的多位整数
- n个正整数,联接成一排,组成一个最小(最大)的多位整数
- 求n个正整数连接成一排,组成一个最大的多位整数
- 设有n个正整数,将他们连接成一排,组成一个最小的多位整数
- java题: 设有n个正整数,将它们联接成一排,组成一个最大的多位整数。例如:N=3时,3个整数13、312、343联成的最大整数为:34331213;
- n个正整数,联接成一排,组成一个最大(最小)的多位整数 python
- 设有n个正整数,将它们连成一排组成一个整数,请编程输出其中最大的结果。
- n个正整数联接成一排,组成一个最小的多位整数
- n个正整数联接成一排,组成一个最小的多位整数
- 设有n个正整数(n<=20),将它们联成一排,组成一个最大的多位数
- 百度一道笔试题(求n个整数连成一排组成的最小整数)
- 贪心算法——输入任意一个正整数N,将其分成多个互不相同的整数,和为N,乘积最大
- 输入n及n个整数(n不超过20),输出这n个数的平均值
- 输入n及n个整数(n不超过20),输出这n个数的平均值
- 输入n及n个整数(n不超过20),输出这n个数的平均值
- Elevator
- 图之 宽度优先遍历 BFS 邻接表创建的图
- 微服务架构设计 第八步: 设计微服务对外 REST API
- 数学思想 —— 对称性思维
- 第一次面试经历
- Java实现:n个正整数,将它们连接成一排,组成一个最大的多位整数。(输入:n(n个整数),依次输入n个整数)
- 通过学习spring优秀框架来学习设计模式---单例、工厂
- python自学笔记9之模块和类
- LeetCode - Roman to Integer
- 摄像头驱动
- 单片机项目:驱动VS1003模块(二)
- JS dataTransfer 对象在拖拽中的使用
- 23 广播服务结合音乐Demo5
- 多个串公共子串算法