首页 > 代码库 > leetcode-Reverse Words in a String-151

leetcode-Reverse Words in a String-151

输入一个字符串,逆序其中的单词

先遍历一遍字符串,把单词放入vector<string> vs中,然后逆序vs,之后遍历一遍vs放入s中

注意可能有连续很多个空格

 1 class Solution { 2 public: 3     void reverseWords(string &s) { 4         if(s.size()==0) return; 5         vector<string> vs; 6         string st; 7         for(int i=0;i<s.size();i++){ 8             if(s[i]== ){ 9                 if(!st.empty()){10                     vs.push_back(st);11                     st.clear();12                 }13             }14             else{15                 st+=s[i];16             }17         }18         if(!st.empty()) vs.push_back(st);19         reverse(vs.begin(),vs.end());20         s.clear();21         for(int i=0;i<vs.size();i++){22             for(int j=0;j<vs[i].size();j++) s+=vs[i][j];23             if(i!=vs.size()-1) s+= ;24         };25     }26 };

 

leetcode-Reverse Words in a String-151