import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
while(n-->0){
String st = sc.next();
char ch[]= new char[3];
ch[0] = st.charAt(0);
ch[1] = st.charAt(1);
ch[2] = st.charAt(2);
ch = sort(ch);
for(int i=0;i<3;i++){
if(i==2){
System.out.println(ch[2]);
}else{
System.out.print(ch[i]+" ");
}
}
}
}
//插入排序
public static char[] sort(char[] ch){
int i = 1;
for (;i<3;i++){
char key = ch[i];
if(ch[i]<ch[i-1]){
int j = i-1;
while(j>=0&&key<ch[j])
j--;
for(int k=i;k>j+1;k--)
ch[k]=ch[k-1];
ch[j+1]=key;
}
}
return ch;
}
}
1.
String st = sc.next();
若改为sc.nextLine()则会报Unknown source的错误
2.
System.out.print(ch[i]+" ");
不是‘ ’,否则当成字符空格处理,和ch[i]相加,最终只输出一个字符
3.
public static char[] sort(char[] ch)
main方法是static的就只能调用static方法,所以sort()需要是static的
4.
while(j>=0&&key<ch[j])
j--;
必须要加上j>=0
的条件,否则出现越界,而且必须是j>=0&&key<ch[j]
不能是key<ch[i]&&j>=0
表达式的执行是有顺序的