题解 | #字符串排序#
字符串排序
https://www.nowcoder.com/practice/5af18ba2eb45443aa91a11e848aa6723
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int num = in.nextInt();
String[] arr = new String[num];
for(int i = 0;i<num;i++){
arr[i] = in.next();
}
for(int i = 0;i<num-1;i++){
for(int j = 0;j<num-1-i;j++){
if(compareTwo(arr[j],arr[j+1]) == 1){
String temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
for(String str : arr){
System.out.println(str);
}
}
/**
* 1:a>b 2:a<b
*/
private static int compareTwo(String a,String b){
int n = 0;
if(a.length()<b.length()){
n = a.length();
}else{
n = b.length();
}
for(int i = 0;i<n;i++){
if(a.charAt(i)==b.charAt(i)){
continue;
}
if(a.charAt(i)>b.charAt(i)){
return 1;
}else{
return 0;
}
}
return a.length()>b.length()?1:0;
}
}
查看11道真题和解析