栈和队列

栈和队列

栈的相关概念

  1. 栈的定义

栈是一种特殊的线性表,其全部操作都被限制在表的固定一端进行,而且构成栈的元素必须是同一数据类型

  1. 栈的特点

只能在线性表的固定端进行操作,将进行操作的一端称为栈顶,用top表示;另一端称为栈底,用bottom表示

栈的常用操作包括建立栈、元素进入栈(入栈)、元素退出栈(出栈)、取栈顶元素等

image-20200801143838526

栈是一个后进先出(Last In First Out,LIFO)的线性表,即最后进栈的元素最先出栈,最先入栈的元素最后出栈

栈的存储结构

栈是特殊的线性表,因此其存储结构和线性表非常类似,也可以分为顺序存储结构和链式存储结构

  1. 顺序栈

将栈在顺序存储结构下所得到的结构,称为顺序栈

  1. 链式栈

将栈在链式存储结构下所得到的结构,称为链式栈

队列的相关概念

  1. 队列的定义

队列和栈一样都是一种操作受到限制的线性表,构成队列的元素必须是同一数据类型。队列的操作可以在两端进行,一端进行插入操作,另一端进行删除操作

image-20200801144401854

  1. 队列的特点

队列是一种插入和删除分别在两端进行操作的线性表,进入队列端称为队列的队尾,用rear表示;离开队列的一端称为队列的队头,用front来表示,即队列的队头进行删除操作

当一个队列rear指向最后一个位置时,不能再进行插入操作,称为队列满状态。当front指向的位置在rear后面时,表示队列中没有元素可以离开,说明队列是空状态

队列的存储结构

与栈存储结构相似,队列也有两种存储方式,即顺序存储方式和链式存储方式

  1. 顺序队列

队列在顺序存储结构下所得到的结构,称为顺序队列

  1. 链式队列

队列在链式存储结构下所得到的结构,称为链式队列,简称链队

posted @ 2020-08-01 14:59  乌利乌利  阅读(216)  评论(0)    收藏  举报