LeetCode,Leetcode - Reverse Words

 2023-11-19 阅读 29 评论 0

摘要:比起POJ弱爆了一題,從后往前掃描一遍,O(n)時間,僅僅要注意各種極端情況就可以,不明確通過率為什么僅僅有13%。 #include<iostream> #include<string> using namespace std;class Solution { public:void reverseWords(string &s

比起POJ弱爆了一題,從后往前掃描一遍,O(n)時間,僅僅要注意各種極端情況就可以,不明確通過率為什么僅僅有13%。


#include<iostream>
#include<string>
using namespace std;class Solution {
public:void reverseWords(string &s) {char* cstr = new char[s.size()+1];int cc = 0;int revstrC = s.size() - 1;while (revstrC >= 0){while (revstrC>=0 && s.at(revstrC) == ' '){revstrC--;}if (revstrC >= 0)//find the end of a word{int end = revstrC;while (revstrC >= 0 && s.at(revstrC) != ' ')revstrC--;s.copy(cstr+cc, end-revstrC, revstrC+1);cc = cc + end - revstrC;cstr[cc] = ' ';cc++;}}cstr[cc-1] = '\0';s.assign(cstr);}
};int main()
{Solution sol;string str = "  Hello  fwe  asg   wf      vergv    ";sol.reverseWords(str);cout << str << endl;
}


版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/2/184192.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息