面试题58 - I. 翻转单词顺序

Posted ocpc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面试题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; continue;
19             }
20             if(s[m]!=  )
21             {
22                 len++;
23             }
24         }
25         if(len !=0) 
26         {
27             ans += s.substr(0,len) + " ";
28         }
29         if(ans.size()>0)
30         {
31             ans.erase(ans.size()-1,1);
32         }
33         return ans;
34 
35     }
36 };

 

以上是关于面试题58 - I. 翻转单词顺序的主要内容,如果未能解决你的问题,请参考以下文章

剑指 Offer 58 - I. 翻转单词顺序

剑指 Offer 58 - I. 翻转单词顺序

LeetCode(剑指 Offer)- 58 - I. 翻转单词顺序

LeetCode(剑指 Offer)- 58 - I. 翻转单词顺序

剑指 Offer 58 - I. 翻转单词顺序

剑指 Offer 58 - I. 翻转单词顺序