C++++


#include 
 
using namespace std;
 
class My_Queue{
private:
    int *m_queue;
    int front;
    int tail;
    int length;
public:
    //构造函数
    My_Queue(int len);
    //构造拷贝函数
    My_Queue(const My_Queue& obj);
    //析构函数
    ~My_Queue();
    //队列长度
    int len();
    //入队
    bool push(int val);
    //出队
    bool pop();
    //判空
    bool empty();
    //判满
    bool full();
    //遍历
    bool show();
 
};
 
//有参构造
My_Queue::My_Queue(int len):m_queue(nullptr),front(0),tail(0),length(0){
 
    m_queue = new int[len+1];
 
    for(int i=0;i


#include 
 
using namespace std;
#define N 128
 
class my_stack{
private:
    int data[N];
    int top=-1;
public:
    //构造函数
    //my_stack();
 
    //判空
    bool empty();
 
    //判满
    bool full();
 
    //入栈
    void push(const  int val);
 
    //出栈
    void pop();
 
    //求栈大小
    int size();
 
    //获取栈顶元素
    int my_top();
 
    //销毁栈
    bool clear();
 
    //遍历
    bool show();
 
    //析构
    //~my_stack();
};
 
 
//判空
bool my_stack::empty(){
 
    return top == -1?1:0;
 
}
 
 
 
//判满
bool my_stack::full(){
 
    return top == N?1:0;
}
 
 
//入栈
void my_stack::push(const int val){
 
    if(full()){return;}
    top++;
    data[top] = val;
}
 
 
//出栈
void my_stack::pop(){
    if(empty()){
        cout<<"栈空";
    }
    top--;
    cout<<"出栈成功!"<

你可能感兴趣的:(算法)