LeetCode151 翻轉字串裡的單詞

2021-09-14 07:11:57 字數 906 閱讀 3431

題目描述:

給定乙個字串,逐個翻轉字串中的每個單詞。

示例 1:

輸入:"the sky is blue"輸出:"blue is sky the"
示例 2:

輸入:"  hello world!  "輸出:"world! hello"解釋:輸入字串可以在前面或者後面包含多餘的空格,但是反轉後的字元不能包括。
示例 3:

輸入:"a good   example"輸出:"example good a"解釋:如果兩個單詞間有多餘的空格,將反轉後單詞間的空格減少到只含乙個。
說明:

高階:

請選用 c 語言的使用者嘗試使用 o(1) 額外空間複雜度的原地解法。

思路:

1、首先將原字串全部翻轉,reverse()函式

2、每個單詞單獨翻轉

3、c++實現時要求空間複雜度o(1),因此在原字串中操作而不需生成乙個新的字串

c++實現:

class solution 

}sb.setlength(pos);

return sb.tostring();

}}

LeetCode 151 翻轉字串

給定乙個字串,逐個翻轉字串中的每個單詞。示例 1 輸入 the sky is blue 輸出 blue is sky the 示例 2 輸入 hello world 輸出 world hello 解釋 輸入字串可以在前面或者後面包含多餘的空格,但是反轉後的字元不能包括。示例 3 輸入 a good ...

Leetcode 151 翻轉字串

給定乙個字串,逐個翻轉字串中的每個單詞。示例 1 輸入 the sky is blue 輸出 blue is sky the 示例 2 輸入 hello world 輸出 world hello 解釋 輸入字串可以在前面或者後面包含多餘的空格,但是反轉後的字元不能包括。示例 3 輸入 a good ...

leetcode151翻轉字串單詞

leetcode151.翻轉字串裡的單詞 題目描述 給定乙個字串,逐個翻轉字串中的每個單詞 示例 輸入 the sky is blue 輸出 blue is sky the 再這裡需要逐一的是輸入的字串可以在前面或者後面包含多餘的空格,但反轉後的單詞間的空格只能減少到乙個。思路 在這裡考慮進行兩次翻...