描述
接受一个只包含小写字母的字符串,然后输出该字符串反转后的字符串。(字符串长度不超过1000)
输入描述:
输入一行,为一个只包含小写字母的字符串。
输出描述:输出该字符串反转后的字符串。
示例1:
输入:abcd
输出:dcba
思路:
创建一个栈,将输入字符串按顺序进栈,然后输出出栈序列。
具体实现(手机客户端)
#include <iostream>
#include <string>
#include <stack>
using namespace std;
int main()
{
string str;
char c;
int n=0;
cout << "请输入字符串!" << endl;
getline(cin,str);
int len = str.length();
stack<char> s;
for(int i=0;i<len;i++){
s.push(str[i]);
}
for(int i=1;i<=len;i++){
cout<<s.top();
s.pop();
}
return 0;
}
时间复杂度O(n)
小结
利用栈的特性实现题目要求。本题直接使用了<stack>头文件。应当掌握如何自定义栈的实现。