【字符串】面试题58 - I. 翻转单词顺序

题目:

 

 

解答:

 1 class Solution {
 2 public:
 3     string reverseWords(string s) 
 4     {
 5         if(s.empty())
 6         {
 7             return s;
 8         }
 9 
10         int len = 0;
11         string ans = "";
12 
13         for(int m = s.size()-1; m >=0; m--)
14         {
15             if(s[m]==' ' && len!=0)
16             {
17                 ans += s.substr(m+1,len)+ " ";
18                 len = 0; 
19                 continue;
20             }
21             if(s[m]!= ' ')
22             {
23                 len++;
24             }
25         }
26         if(len != 0) 
27         {
28             ans += s.substr(0,len) + " ";
29         }
30         if(ans.size()>0)
31         {
32             ans.erase(ans.size()-1,1);
33         }
34         return ans;
35 
36     }
37 };

 

posted @ 2020-05-04 10:08  梦醒潇湘  阅读(120)  评论(0)    收藏  举报