Given an input string, reverse the string word by word.

For example,
Given s = "the sky is blue",
return "blue is sky the".


题解:用栈就行了

代码:

 1 class Solution {
 2 public:
 3     void reverseWords(string &s) {
 4         stack<string>st;
 5         string temp = "";
 6 
 7         for(int i = 0;i <= s.length();i++){
 8             if(i == s.length())
 9             {
10                 st.push(temp);
11             }
12             else if(s[i] != ' '){
13                 temp += s[i];
14             }
15             else
16             {
17                 if(temp != ""){
18                     st.push(temp);
19                     temp = "";
20                 }
21             }
22         }
23         s = "";
24         while(!st.empty()){
25             if(st.top() != " ")
26                 s += st.top();
27             st.pop();
28             if(!st.empty() && s != ""){
29                 s += " ";
30             }
31         }
32     }
33 };

 

 

相关文章:

  • 2021-09-10
  • 2021-10-01
  • 2022-12-23
  • 2022-12-23
  • 2021-07-20
  • 2021-10-29
  • 2022-01-14
猜你喜欢
  • 2022-01-27
  • 2021-08-21
  • 2021-12-04
  • 2022-02-11
  • 2021-10-01
  • 2021-10-29
  • 2022-02-22
相关资源
相似解决方案