首页 > 代码库 > 【LeetCode】Reverse Words in a String

【LeetCode】Reverse Words in a String

【题意】

给定一个字符串,把里面的单词逆序输出来。

例如:给定 s = "the sky is blue",返回 "blue is sky the"。

注意:接收的字符串开头和结尾可能有空格,但是返回时开头和结尾不能有空格;返回时每两个单词之间只能有一个空格。

【Java代码】

public class Solution {
    public String reverseWords(String s) {
        String[] words = s.split(" ");
        String ret = "";
        for (int i = words.length - 1; i >= 0; i--) {
            if (words[i].trim().length() > 0) ret += words[i] + " ";
        }
        return ret.trim();
    }
}

【注意点】

if (words[i].trim().length() > 0)
如果没有这一行,那么输入"   a   b "时,返回"b   a "(b,a之间多于一个空格),而不是正确地"b a"。

【LeetCode】Reverse Words in a String