题目链接:单词倒排_牛客题霸_牛客网
注意点:
1.一开始用栈,不太好实现,参考了评论区的写法,需要注意的是stringstream的引入,以引号为分割
2.最后一个单词不需要空格
3.streamstring的头文件sstream
#include<iostream>
#include<string>
#include<sstream>
#include<vector>
using namespace std;
int main()
{
string str;
vector<string> vec;
while(getline(cin,str))
{
for (int i = 0 ; i < str.size(); ++i)
{
//非字母的字符设置为空格
if (!isalpha(str[i]))
{
str[i] = ' ';
}
}
//以空格作为分割
stringstream stream(str);
while(stream >> str)
{
vec.push_back(str);
}
//逆向输出
for(int i = vec.size()-1; i > 0 ; --i)
{
cout << vec[i] <<" ";
}
//最后一个单词不需要输出空格,单独输出
cout << vec[0];
}
return 0;
}