LeetCode如何翻转字符串里的单词

这篇文章主要介绍LeetCode如何翻转字符串里的单词,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

1,问题简述

给定一个字符串,逐个翻转字符串中的每个单词。

说明:

无空格字符构成一个 单词 。

输入字符串可以在前面或者后面包含多余的空格,但是反转后的字符不能包括。

如果两个单词间有多余的空格,将反转后单词间的空格减少到只含一个。

2,示例

示例 1:
输入:"the sky is blue"输出:"blue is sky the"示例 2:
输入:"  hello world!  "输出:"world! hello"解释:输入字符串可以在前面或者后面包含多余的空格,但是反转后的字符不能包括。示例 3:
输入:"a good   example"输出:"example good a"解释:如果两个单词间有多余的空格,将反转后单词间的空格减少到只含一个。示例 4:
输入:s = "  Bob    Loves  Alice   "输出:"Alice Loves Bob"示例 5:
输入:s = "Alice does not even like bob"输出:"bob like even not does Alice" 
提示:
1 <= s.length <= 104s 包含英文大小写字母、数字和空格 ' 's 中 至少存在一个 单词

3,题解思路

正常的思路看下哈

4,题解程序


public class ReverseWordsTest2 {    public static void main(String[] args) {        String str = "a good   example";        String reverseWords = reverseWords(str);        System.out.println("reverseWords = " + reverseWords);    }
   public static String reverseWords(String s) {        if (s == null || s.equals("") || s.length() == 0) {            return s;        }        String trim = s.trim();        String[] split = trim.split(" ");
       StringBuilder stringBuilder = new StringBuilder();        for (int k = split.length - 1; k >= 0; k--) {            String s1 = split[k].trim();            if (split[k].equals("")) {                continue;            }            stringBuilder.append(s1);            stringBuilder.append(" ");        }        return stringBuilder.toString().trim();    }}

5,题解程序图片版

LeetCode如何翻转字符串里的单词

以上是“LeetCode如何翻转字符串里的单词”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

原创文章,作者:506227337,如若转载,请注明出处:https://blog.ytso.com/223619.html

(0)
上一篇 2022年1月7日
下一篇 2022年1月7日

相关推荐

发表回复

登录后才能评论