题解 | #单词倒排#
单词倒排
https://www.nowcoder.com/practice/81544a4989df4109b33c2d65037c5836
import java.util.Scanner;
import java.util.*;
// 注意类名必须为 Main, 不要有任何 package xxx 信息
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
// 注意 hasNext 和 hasNextLine 的区别
String str = in.nextLine();
char[] c_s = str.toCharArray();
List<String> list = new ArrayList<>();
int index = 0;
for(int i=0;i<str.length();i++){
if(!Character.isAlphabetic(c_s[i])){
if(i==0){
index=i+1;
continue;
}
else{
list.add(str.substring(index,i));
index = i+1;
}
}
}
if(index<str.length()){
list.add(str.substring(index,str.length()));
}
int n = list.size()-1;
StringBuilder sb = new StringBuilder();
while(n>=1){
sb.append(list.get(n));
sb.append(" ");
n--;
}
sb.append(list.get(n));
System.out.print(sb.toString());
}
}
记录非字符的位置,对字符串切片,存储至list中
倒序遍历list加入stringbuilder中,并按要求添加空格

