题解 | #句子逆序#

句子逆序

http://www.nowcoder.com/practice/48b3cb4e3c694d9da5526e6255bb73c3

本题思路很明确,由于每一个单词内部的字母不需要被逆序,因此很简单。首先以空格为间隔符将各个单词存入一个容器中。然后用反向迭代器对这个容器进行遍历即可。

#include <iostream>
#include <vector>
#include <string>
using namespace std;

int main() {
    string s;
    getline(cin, s, '\n');
    string temp;
    vector<string> res;
    for (int i = 0; i < s.size(); i++) {
        if (s[i] != ' '){
            temp = temp + s[i];
        }
        if(s[i] == ' ' || i == s.size() - 1) {
            res.push_back(temp);
            temp.clear();
        }
    }
    
    for (vector<string>::reverse_iterator iter = res.rbegin(); iter != res.rend(); iter++) {
        cout << *iter << " ";
    }
    
    return 0;
}
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务