您的位置:首页 > 其它

一个能将给定非负整数数组中的数字排列成最大数字的函数(数组元素长度随机)

2017-07-31 08:46 756 查看
public class ToArray{
public static void main(String[] args){
int[] a = {55,9,5475,2357,5575};
int temp = 0;
for(int i=1;i<a.length;i++){
for(int j=0;j<a.length-i;j++){
if(compare(a[j],a[j+1])){
//a[j]优先级<a[j+1]交换位置
temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
}
}
}
StringBuffer sb = new StringBuffer();
for(int i : a){
System.out.println(i);
sb.append(i);
}
System.out.println(sb);
}
public static boolean compare(int a,int b){
String m = Integer.toString(a);
String n = Integer.toString(b);

for(int i=0;i<m.length()&&i<n.length();i++){
if(m.charAt(i)<n.charAt(i)){
return true;
}else if(m.charAt(i)>n.charAt(i)){
return false;
}else{
if(m.length()<n.length()){
if(m.length()-1 == i){
return true;
}
}else{
if(n.length()-1 == i){
return false;
}
}
continue;
}
}
return true;
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐