题目描述
将一句话的单词进行倒置,标点不倒置。比如 I like beijing. 经过函数后变为:beijing. like I
输入描述:
每个测试输入包含1个测试用例: I like beijing. 输入用例长度不超过100
输出描述:
依次输出倒置之后的字符串,以空格分割
示例1
输入
I like beijing.
输出
beijing. like I
import java.util.*;
public class Main{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
String s=sc.nextLine();
int x=0;
LinkedList<Character> list = new LinkedList<Character>();
for(int i=s.length()-1;i>=0;i--){
if(s.charAt(i)!=' '){
char c=s.charAt(i);
list.add(c);
continue;
}
String str = "";
while(list.size() > 0) {
str += list.removeLast();
}
System.out.print(str+" ");
}
String str = "";
while(list.size() > 0) {
str += list.removeLast();
}
System.out.print(str);
}
}
首先将输入的字符串一一读取,当字符不为空格时,转换成char类型加入List链表
当字符为空格时,将List链表中的字符倒序输出,同时删除掉,反复循环