在数据结构中堆叠ADT
抽象数据类型是一种特殊的数据类型,其行为由一组值和一组操作定义。使用关键字“抽象”是因为我们可以使用这些数据类型,因此可以执行不同的操作。但是这些操作的工作方式对用户完全是隐藏的。ADT由原始数据类型组成,但是操作逻辑是隐藏的。
在这里,我们将看到堆栈ADT。这些是堆栈ADT的少量操作或功能。
isFull(),用于检查堆栈是否已满
isEmpry(),用于检查堆栈是否为空
push(x),用于将x推入堆栈
pop(),用于从堆栈顶部删除一个元素
peek(),用于获取堆栈中最顶层的元素
size(),此函数用于获取堆栈中存在的元素数
示例
#include<iostream> #include<stack> using namespace std; main(){ stack<int> stk; if(stk.empty()){ cout << "Stack is empty" << endl; } else { cout << "Stack is not empty" << endl; } //将元素插入堆栈 stk.push(10); stk.push(20); stk.push(30); stk.push(40); stk.push(50); cout << "Size of the stack: " << stk.size() << endl; //弹出和支付元素 while(!stk.empty()){ int item = stk.top(); // same as peek operation stk.pop(); cout << item << " "; } }
输出结果
Stack is empty Size of the stack: 5 50 40 30 20 10