该堆栈是一个有序列表,其中插入和删除是从同一端,顶部完成。首先输入的最后一个元素是要删除的第一个元素(LIFO的基本原理)。这意味着它是一个实现为LIFO的数据结构。
主要堆栈操作为(基本ADT操作):
推送(T数据):在顶部插入
T pop()
:从顶部删除
bool isEmpty()
:检查堆栈是否为空
在这里,T是数据类型(int / char / float等)
标准模板库(STL)是一组C ++模板类,用于提供常见的编程数据结构和功能,例如列表,堆栈,数组等。因此,也可以在STL的帮助下实现STACK。
声明数据类型T的堆栈:
stack<T> st; //基本STL声明 e.g.: stack<int> st; //堆栈仅容纳整数
声明堆栈迭代器:
stack<T>::iterator it; e.g.: stack<int>::iterator it;
push(T item)-在顶部插入一个项目
pop()-弹出顶部的元素,它不返回弹出的项目
top()-返回顶部元素
空-根据堆栈是否为空返回true或false
size()-返回堆栈的大小
您可以单击每个功能以检查每个功能的详细代码和实现。以下是总堆栈操作的汇编。