原题地址(中等)
这题主要考察的是对字符串的操作。
方法1
直接用Python的语言特性,一行代码搞定。。。。。**
class Solution:def reverseWords(self, s: str) -> str:return " ".join(reversed(s.split()))
方法2
**
考验字符串操作,把字符串中的单词一个个的拿出来存到vector中,然后反向遍历vector就可以了。
class Solution {public:string reverseWords(string s) {vector<string> v;int i = 0, begin, end;while(i < s.size()){while(s[i] == ' ')i++;begin = i;while(i < s.size() && s[i] != ' ')i++;end = i - 1;if(end >= begin)v.push_back(s.substr(begin, end-begin+1));}string ans = "";for(int k=v.size()-1; k >= 0; k--){if(k != 0) ans = ans + v[k] + " ";else ans += v[k];}return ans;}};
时空复杂度
都是 O(N)
