輸入: " ?hello world! ?"
輸出:?"world! hello"
解釋: 輸入字符串可以在前面或者后面包含多余的空格,但是反轉后的字符不能包括。
示例 3:輸入: "a good ??example"
輸出:?"example good a"
解釋: 如果兩個單詞間有多余的空格,將反轉后單詞間的空格減少到只含一個。
?說明:
無空格字符構成一個單詞。
輸入字符串可以在前面或者后面包含多余的空格,但是反轉后的字符不能包括。
如果兩個單詞間有多余的空格,將反轉后單詞間的空格減少到只含一個。
?進階:
請選用 C 語言的用戶嘗試使用?O(1) 額外空間復雜度的原地解法。
來源:力扣(LeetCode)
鏈接:https://leetcode-cn.com/problems/reverse-words-in-a-string
著作權歸領扣網絡所有。商業轉載請聯系官方授權,非商業轉載請注明出處。
解法:?
class Solution {
public:string reverseWords(string s) {stringstream ss;string ans = "", temp;ss << s;while (ss >> temp) {ans = " " + temp + ans;}if (ans != "")ans.erase(ans.begin());return ans;}
};
?