天天看点

3.1 栈和队列的定义和特点

栈和队列是两种常用的、重要的数据结构。

栈和队列是限定插入和删除只能在表的 “端点” 进行的线性表。

普通线性表的插入:如果插入位置未在最后,则需要移动元素

在删除时,如果删除位置不是最后一个,则需要在删除后进行元素迁移。

栈:后进先出

队列:先进先出

栈就是具有后进先出的特性 ,使得栈称为程序设计中的有用工具。另外,如果问题求解的过程具有“后进先出”的天然特性的话,则求解的算法中必然需要利用“栈”。

如:数值转换,

3.1 栈和队列的定义和特点

由于队列操作具有先进先出的特性,是的队列成为程序设计中解决类似排队问题的有用工具

脱机打印输出:按申请的先后顺序依次输出

多用户系统中,多个用户排成队,分时地循环使用cpu和主存

按用户的优先级排成多个队,每个优先级一个队列

实施控制系统中,信号按接收的先后顺序依次处理

网络电文传输,按到达的时间先后顺序依次进行

栈和队列是限定插入和删除,只能在表的“端点”进行的线性表