C++ Day3

目录

1. 自行封装一个栈的类,包含私有成员属性:栈的数组、记录栈顶的变量

成员函数完成:构造函数、析构函数、拷贝构造函数、入栈、出栈、清空栈、判空、判满、获取栈顶元素、求栈的大小

2.自行封装一个循环顺序队列的类,包含私有成员属性:存放队列的数组、队头位置、队尾位置

成员函数完成:构造函数、析构函数、拷贝构造函数、入队、出队、清空队列、判空、判满、求队列大小


1. 自行封装一个栈的类,包含私有成员属性:栈的数组、记录栈顶的变量

成员函数完成:构造函数、析构函数、拷贝构造函数、入栈、出栈、清空栈、判空、判满、获取栈顶元素、求栈的大小

#include 

using namespace std;

class Sta
{
private:
    int arr[128];
    int len=-1;
public:
    // 显性定义无参构造函数
    Sta();

    //析构函数
    ~Sta();

    //拷贝构造函数
    Sta(const Sta &other);

    //判空
    bool Sta_empty();

    //判满
    bool Sta_full();

    //入栈
    void Sta_insert();

    //出栈
    void Sta_pop();

    //清空栈
    void Sta_outall();

    //获取栈顶元素
    int Sta_topdata();

    //求栈的大小
    int Sta_size();
};

// 显性定义无参构造函数
Sta::Sta()
{
    cout<<"Sta::无参构造"<len=other.len;
    cout<<"Sta::拷贝构造函数"<>i;
    arr[len+1]=i;
    len++;
    cout<<"入栈成功"<=0;len--)
    {
        temp=arr[len];
        cout<

C++ Day3_第1张图片

2.自行封装一个循环顺序队列的类,包含私有成员属性:存放队列的数组、队头位置、队尾位置

成员函数完成:构造函数、析构函数、拷贝构造函数、入队、出队、清空队列、判空、判满、求队列大小

#include 

using namespace std;

class Que
{
private:
    int arr[128];
    int front;
    int tail;
public:
    // 显性定义有参构造函数
    Que(int front,int tail);

    //析构函数
    ~Que();

    //拷贝构造函数
    Que(const Que &other);

    //判空
    bool Que_empty();

    //判满
    bool Que_full();

    //入队
    void Que_insert();

    //出队
    void Que_pop();

    //清空队
    void Que_outall();

    //求队的大小
    int Que_size();
};

// 显性定义无参构造函数
Que::Que(int front,int tail):front(front),tail(tail)
{
    cout<<"Que::有参构造"<front=other.front;
    this->tail=other.tail;
    cout<<"Que::拷贝构造函数"<>i;
    arr[tail]=i;
    tail=(tail+1)%128;
    cout<<"入队成功"<

C++ Day3_第2张图片

你可能感兴趣的:(c++,算法,数据结构)