C語言重構 151 翻轉字串裡的單詞

2021-10-13 22:38:54 字數 1106 閱讀 2893

所有題目源**:git位址

題目

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

說明:無空格字元構成乙個 單詞 。

輸入字串可以在前面或者後面包含多餘的空格,但是反轉後的字元不能包括。

如果兩個單詞間有多餘的空格,將反轉後單詞間的空格減少到只含乙個。

示例 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"

方案:
class

solution

else

if(s[i]

==' '

&& jud ==0)

//如果時空格,且之前是由字元的,那麼表示單詞末尾

else

if(s[i]

==' '

&& jud ==1)

}//防止最後不是空格的情況

if(s[len -1]

!=' '

)reverse

(s.begin()

+ left, s.

end())

;//消除重複空格

for(

int i = len -

1; i >

0; i--)}

return s;}}

;

複雜度計算

151 翻轉字串裡的單詞

給定乙個字串,逐個翻轉字串中的每個單詞。示例 輸入 the sky is blue 輸出 blue is sky the 說明 無空格字元構成乙個單詞。輸入字串可以在前面或者後面包含多餘的空格,但是反轉後的字元不能包括。如果兩個單詞間有多餘的空格,將反轉後單詞間的空格減少到只含乙個。高階 請選用c語...

151 翻轉字串裡的單詞

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

151 翻轉字串裡的單詞

無空格字元構成乙個單詞。輸入字串可以在前面或者後面包含多餘的空格,但是反轉後的字元不能包括。如果兩個單詞間有多餘的空格,將反轉後單詞間的空格減少到只含乙個。class solution stringbuffer sb new stringbuffer string words s.trim spli...