题解 | #字符串排序#
字符串排序
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; } }