21xrx.com
2025-03-28 03:52:34 Friday
文章检索 我的文章 写文章
C++如何定义栈
2023-07-04 19:18:59 深夜i     17     0
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++中定义栈的方法有两种,一种是使用结构体,另一种是使用类。无论使用哪种方法,栈的基本结构都是一样的,包括数据成员和成员函数,其中数据成员存储栈的元素,成员函数实现栈的基本操作。

  
  

评论区

请求出错了