首页 > 代码库 > LeetCode--Reverse Words in a String
LeetCode--Reverse Words in a String
class Solution {public: void reverseWords(string &s) { int len = s.length(); if(len == 0) return; vector<string> res; int i = 0; int j = len-1; //去掉收尾的空格 while(i < len && s[i] == ‘ ‘) ++i; while(j >= 0 && s[j] == ‘ ‘) --j; int k = i;//寻找一个单词 while(i <= j) { k = i; while(i<=j && s[i]!=‘ ‘) { ++i; } res.push_back(s.substr(k,i-k)); while(s[i]==‘ ‘ && i<=j) ++i; } if(res.empty()) { s = ""; return; } reverse(res.begin(),res.end()); string m = res[0]; for(int i=1;i<res.size();i++){ m+=" "; m+=res[i]; } s=m; }};
先删除前后的空格,多个空格合并为一个空格输出。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。