C++ 倒排单词 & 逆向迭代器使用

编写程序,读入一行英文(只包含字母和空格,单词间以单个空格分隔),将所有单词的顺序倒排并输出,依然以单个空格分隔。

输入格式
输入为一个字符串(字符串长度至多为 100
)。

输出格式
输出为按要求排序后的字符串。

输入样例:
I am a student
输出样例:
student a am I

#include 
#include 
#include 
#include 

using namespace std;

int main ()
{
    string s;
    getline(cin, s);
    vector<string> res;
    stringstream ssin(s);
    string str;
    while(ssin >> str) {
        res.push_back(str);
    }
    for(auto it = res.rbegin();it != res.rend(); it ++) {
        cout<<*it<<" ";
    }
    return 0;
}

使用了逆向迭代器遍历 vector 容器中存储的单词,并将它们逆序输出到标准输出。声明一个逆向迭代器 it,并将其初始化为容器 words 的逆向起始位置,即最后一个元素的位置。
it != res.rend():迭代器的终止条件是当逆向迭代器 it 到达容器 res的逆向结束位置,即第一个元素之前的位置时,循环结束.

你可能感兴趣的:(力扣,字符串,c++)