21xrx.com
2024-11-22 08:05:53 Friday
登录
文章检索 我的文章 写文章
C++如何定义栈
2023-07-04 19:18:59 深夜i     --     --
C++ 定义

在计算机科学中,栈是一种重要的数据结构,它是一种先进后出的数据集合。在C++编程中,我们可以使用数组或者链表来实现栈。下面是如何使用C++来实现栈的步骤:

1. 定义一个栈的结构体或者类,包括数据成员和成员函数。


// 定义一个栈结构体

struct Stack {

  int data[100];

  int top;

  // 构造函数

  Stack()

    top = -1;

  

  // 判断栈是否为空

  bool isEmpty()

    return top == -1;

  

  // 判断栈是否已满

  bool isFull()

    return top == 99;

  

  // 入栈

  void push(int x) {

    if(!isFull()) {

      top++;

      data[top] = x;

    }

  }

  // 出栈

  void pop() {

    if(!isEmpty())

      top--;

    

  }

  // 获取栈顶数据

  int peek() {

    return data[top];

  }

};

以上是定义一个结构体实现栈的方式,在C++中还可以使用类来实现。下面是使用类来实现栈的例子:


class Stack {

private:

  int data[100];

  int top;

public:

  Stack()

    top = -1;

  

  bool isEmpty()

    return top == -1;

  

  bool isFull()

    return top == 99;

  

  void push(int x) {

    if(!isFull()) {

      top++;

      data[top] = x;

    }

  }

  void pop() {

    if(!isEmpty())

      top--;

    

  }

  int peek() {

    return data[top];

  }

};

2. 在主函数中创建栈对象,然后进行操作。


int main() {

  Stack s;

  // 入栈

  s.push(1);

  s.push(2);

  s.push(3);

  // 出栈

  s.pop();

  // 获取栈顶元素

  int topElement = s.peek();

  return 0;

}

在以上代码中,我们首先创建了一个Stack类型的对象s,然后进行入栈和出栈操作,最后获取栈顶元素。这就是使用C++定义栈的基本步骤。

总结一下,C++中定义栈的方法有两种,一种是使用结构体,另一种是使用类。无论使用哪种方法,栈的基本结构都是一样的,包括数据成员和成员函数,其中数据成员存储栈的元素,成员函数实现栈的基本操作。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复