【基于C++的经典算法实现:字符串反转】——利用栈数据结构
字符串反转是计算机领域中一个非常基础的问题,对于C++程序员来说,我们可以使用栈这种数据结构来实现字符串反转的功能。
在使用栈来实现字符串反转时,我们需要注意以下几点:
-
首先需要定义一个栈;
-
利用for循环把字符串的每一个字符一个一个地压入到栈中;
-
最后再依次从栈顶取出每一个字符,就可以实现字符串反转的功能。
下面是相应的C++代码实现:
#include <iostream>
#include <stack>
using namespace std;
string reverseStr(string s) {
stack<char> st;
string res;
for(int i = 0; i < s.length(); ++i) {
st.push(s[i]);
}
while(!st.empty()) {
res += st.top();
st.pop();
}
return res;
}
int main() {
string s = "Hello World!";
cout << rev