LeetCode114|翻转字符串中的单词III

it2023-12-03  88

0x01,问题简述

给定一个字符串,你需要反转字符串中每个单词的字符顺序,同时仍保留空格和单词的初始顺序。

0x02,示例

示例: 输入:"Let's take LeetCode contest" 输出:"s'teL ekat edoCteeL tsetnoc"   提示: 在字符串中,每个单词由单个空格分隔,并且字符串中不会有任何额外的空格。

0x03,题解思路

利用已有的数据结构实现字符串的翻转

0x04,题解程序

public class ReverseWordsTest3 { public static void main(String[] args) { String str = "Let's take LeetCode contest"; String reverseWords = reverseWords(str); System.out.println("reverseWords = " + reverseWords); } public static String reverseWords(String s) { if (s == null || s.length() == 0) { return s; } String[] strings = s.split(" "); StringBuilder stringBuilder = new StringBuilder(s.length()); for (String s1 : strings ) { StringBuilder t = new StringBuilder(); t.append(s1); stringBuilder.append(t.reverse().toString()); stringBuilder.append(" "); } return stringBuilder.substring(0,stringBuilder.length() - 1); } }

0x05,题解程序图片版

0x06,总结一下

字符串翻转是特别常见的一类题了,各种解决思路,本题也是基于最符合常规逻辑的解法,代码敲一敲,就差不多理解了,这也是为啥一直在说的,代码要多练

最新回复(0)