# 贪心算法 设有n个正整数，将它们连接成一排，组成一个最大的多位整数。例如：n=4时，4个整数7，13，4，246，连成的最大整数为7424613。

## /* * a+b >= b+a说明a >= b   * a+b <= b+a说明a <= b * */

package com.wxh.suanfa.贪心算法;

public class BigNumber {
private static String num[] = {"7","131","132","26"};//定义要比较的数
private static int length = num.length;
public static void main(String[] args) {
String s = merge();
System.out.println("最大整数为:"+s);
}
public static String merge(){

int a ;//定义要比较的字符串
int b ;
String s = "";//合并后的字符串

/*for (int i = 0; i<length-1; i++){
for (int j = i+1; i<length; j++){*/

for (int i = 1; i<length; i++){//类似于冒泡排序
for (int j = 0; j < length-i; j++){
a = Integer.parseInt(num[j] + num[j+1]);//先转化为int方便比较大小
b = Integer.parseInt(num[j+1] + num[j]);
/*
* a+b >= b+a说明a >= b
* a+b <= b+a说明a <= b
* */
if (a <= b){//从大到小排序
String temp = num[j];
num[j] = num[j+1];
num[j+1] = temp;
}
}
}
for (int i = 0; i<length;i++){//将排序完的数组按照顺序进行一个输出
s = s + num[i];
}
return s;
}
}


10-24 1379

03-12 9327
10-13 5781
06-10 1928
08-29 4400
09-10 9381
11-20 4459
04-19 2208
09-09 4157
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客