用冒泡排序比较字符串字典序…复杂度很高
import java.util.Scanner;
public class Main {
public static void main(String[] args) { Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
sc.nextLine();
String[] arr = new String[num];
for(int i=0;i<num;i++){
arr[i] = sc.nextLine();
}
String tmp;
for(int i=num-1;i>=1;i--){
for(int j=0;j<i;j++){
if(strBe(arr[j],arr[j+1])){
tmp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = tmp;
}
}
}
for(int i=0;i<num;i++){
System.out.println(arr[i]);
}
}
public static boolean strBe(String str1,String str2){
char[] a = str1.toCharArray();
char[] b = str2.toCharArray();
int len = Math.min(a.length, b.length);
for(int i=0;i<len;i++){
if(a[i]==b[i])continue;
else if(a[i]<b[i])return false;
else return true;
}
if(len < b.length){
return false;
}
return true;
}
}