stack实现字符串翻转
时间: 2024-05-10 08:18:45 浏览: 170
可以使用栈(stack)数据结构来实现字符串翻转。
具体实现步骤如下:
1. 创建一个栈。
2. 将字符串中的每个字符依次入栈。
3. 依次从栈中取出每个字符,将它们拼接到一起,形成新的字符串。
4. 返回新的字符串,即为翻转后的字符串。
以下是用 C++ 语言实现字符串翻转的示例代码:
```c++
#include <iostream>
#include <stack>
#include <string>
using namespace std;
string reverseString(string str) {
stack<char> s;
for (int i = 0; i < str.length(); i++) {
s.push(str[i]);
}
string reversedStr = "";
while (!s.empty()) {
reversedStr += s.top();
s.pop();
}
return reversedStr;
}
int main() {
string str = "Hello, world!";
string reversedStr = reverseString(str);
cout << "Reversed string: " << reversedStr << endl;
return 0;
}
```
输出结果为:
```
Reversed string: !dlrow ,olleH
```
阅读全文