首页 > 其他分享 >DS堆栈--逆序输出(不使用STL栈)

DS堆栈--逆序输出(不使用STL栈)

时间:2024-09-23 14:19:04浏览次数:11  
标签:return -- top STL int 字符串 堆栈 DS 输入

题目描述

请编写堆栈操作的具体实现代码,实现字符串的逆序输出,需自行实现堆栈。

输入一个字符串,按字符按输入顺序压入堆栈,然后根据堆栈后进先出的特点,做逆序输出

输入

第一行输入t,表示有t个测试实例
第二起,每一行输入一个字符串,注意字符串不要包含空格

字符串的输入可参考如下代码:

#include <string>

int main()

{ string str;

  Int len;

  cin>>str; //把输入的字符串保存在变量str中

  len = str.length()  //获取输入字符串的长度

}

输出

每行逆序输出每一个字符串

#include <iostream>
using namespace std;
#define maxn 100;
class charstack
{
public:
    char data[100];
    int top;
    charstack()
    {
        top = -1;
    }
    bool isempty()
    {
        if (top == -1)
        {
            return 1;
        }
        return 0;
    }
    int push(char x)
    {
        if (top == 99)return 0;
        top++;
        data[top] = x;
        return 1;
    }
    int out()
    {
        if (isempty())return 0;
        while (top>=0)
        {
            cout << data[top--];
        }
        cout << endl;
        return 1;
    }
};
int main()
{
    int n;
    cin >> n;
    while (n--)
    {
        string x;
        cin >> x;
        charstack a;
        for (int i = 0; i < x.size(); ++i)
        {
            a.push(x[i]);
        }
        a.out();
    }
}

标签:return,--,top,STL,int,字符串,堆栈,DS,输入
From: https://blog.csdn.net/2301_80770184/article/details/142443967

相关文章