题解 | #图片整理#
图片整理
https://www.nowcoder.com/practice/2de4127fda5e46858aa85d254af43941
import java.util.Scanner;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// 注意 hasNext 和 hasNextLine 的区别
while (in.hasNextLine()) { // 注意 while 处理多个 case
String lily = in.nextLine();
char[] charlist= lily.toCharArray();
out(charlist,0,charlist.length-1);
System.out.println(charlist);
}
}
public static void out( char[] charlist,int left,int right){
if(left>= right ){
return;
}
//慢指针
int site=left;
char c=charlist[left];
for(int j=left;j<=right;j++){
if(charlist[j]<c){
site++;
char k=charlist[site];
charlist[site]=charlist[j];
charlist[j]=k;
}
}
char k=charlist[site];
charlist[site]=charlist[left];
charlist[left]=k;
//递归
out(charlist,left,site-1);
out(charlist,site+1,right);
}
}

