先概括一下线性表顺序储存和链式储存。
线性表的顺序储存是用一组地址连续的储存单元依次存储线性表的数据元素。
线性表的链式储存是用指针将储存线性表中的数据元素的那些单元依次串联在一起。
接下来图片说明。
如图所示结果,顺序储存插入(删除)节点比链式储存的速度慢;而查找操作有基于序号的查找,顺序储存比链式储存的速度快。
接下来解释一下堆栈
堆栈,它是运算受限的线性表,其限制仅允许在一段进行插入、删除操作,不允许在其他任何地方查询、删除、插入操作。它遵从的是先进后出原则。
栈的顺序储存在线性表顺序储存的基础上,选择线性表的一端作为栈顶。之后就对栈顶进行操作。
栈的链式储存选择单链表的头部作为栈顶。
队列,同堆栈也是运算受限的线性表,其限制是仅允许在表的一段进行插入,表的另一端进行删除。遵从先进先出原则。