定义和特点
- 栈是一种线性数据结构,具有后进先出(LIFO)的特性。
- 可以类比为一叠盘子,只能从顶部放入和取出元素。
- 可以使用数组的
push()
和pop()
方法来实现。
分类
「顺序栈」:即堆栈的顺序存储结构。利用一组地址连续的存储单元依次存放自栈底到栈顶的元素,同时使用指针 𝑡𝑜𝑝 指示栈顶元素在顺序栈中的位置。
「链式栈」:即堆栈的链式存储结构。利用单链表的方式来实现堆栈。栈中元素按照插入顺序依次插入到链表的第一个节点之前,并使用栈顶指针 𝑡𝑜𝑝 指示栈顶元素,𝑡𝑜𝑝 永远指向链表的头节点位置。