牛客网--单词倒排(Java)
題目描述
對(duì)字符串中的所有單詞進(jìn)行倒排。
說(shuō)明:
1、每個(gè)單詞是以26個(gè)大寫或小寫英文字母構(gòu)成;
2、非構(gòu)成單詞的字符均視為單詞間隔符;
3、要求倒排后的單詞間隔符以一個(gè)空格表示;如果原字符串中相鄰單詞間有多個(gè)間隔符時(shí),倒排轉(zhuǎn)換后也只允許出現(xiàn)一個(gè)空格間隔符;
4、每個(gè)單詞最長(zhǎng)20個(gè)字母;
輸入描述:
輸入一行以空格來(lái)分隔的句子
輸出描述:
輸出句子的逆序
示例1
輸入
復(fù)制
I am a student輸出
復(fù)制
student a am I?
代碼:
import java.util.*;
public class Main{
? ? public static void main(String[] args){
? ? ? ? Scanner sc = new Scanner(System.in);
? ? ? ? String x = sc.nextLine();
? ? ? ? StringBuffer a = new StringBuffer();
? ? ? ? for(int i=0;i<x.length();i++){
? ? ? ? ? ? if((x.charAt(i)>='a'&&x.charAt(i)<='z')||(x.charAt(i)>='A'&&x.charAt(i)<='Z')){
? ? ? ? ? ? ? ? a.append(x.charAt(i));
? ? ? ? ? ? }else{
? ? ? ? ? ? ? ? a.append(" ");
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? x = a.toString();
? ? ? ? String[] arr = x.trim().split(" ");
? ? ? ? StringBuffer sb = new StringBuffer();
? ? ? ? for(int i=arr.length-1;i>=1;i--){
? ? ? ? ? ? if(!arr[i].equals(" ")){
? ? ? ? ? ? ? ? sb.append(arr[i]);
? ? ? ? ? ? ? ? sb.append(" ");
? ? ? ? ? ? }
? ? ? ? }
? ? ? ? if(!arr[0].equals(" ")){
? ? ? ? ? ? sb.append(arr[0]);
? ? ? ? }
? ? ? ? System.out.println(sb.toString());
}
}
總結(jié)
以上是生活随笔為你收集整理的牛客网--单词倒排(Java)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Leetcode--144. 二叉树的前
- 下一篇: 【剑指offer】面试题30:包含min