background image

栈和队列的基本操作及其应用

一、实验目的

1、掌握栈和队列的顺序存储结构和链式存储结构,以便在实际中灵

活应用。

2、掌握栈和队列的特点,即后进先出和先进先出的原则。
3、掌握栈和队列的基本运算,如:入栈与出栈,入队与出队等运算
在顺序存储结构和链式存储结构上的实现。

二、实验内容

题目:商品货架管理

[问题描述]

商店货架以栈的方式摆放商品。生产日期越近的越靠近栈底,出货

时从栈顶取货。一天营业结束,如果货架不满,则需上货。入货直接将商
品摆放到货架上,则会使生产日期越近的商品越靠近栈顶。这样就需要
倒货架,使生产日期越近的越靠近栈底。

[基本要求]

设计一个算法,保证每一次上货后始终保持生产日期越近的商品越

靠近栈底。

[实现提示]

可以用一个队列和一个临时栈作为周转。

三、实验前的准备工作

1、掌握栈的逻辑结构和存储结构。
2、熟练掌握栈的出栈、入栈等操作。
3、掌握队列的逻辑结构和存储结构。
4、熟练掌握队列的出队、入队等操作

四、问题分析

用一个队列作为仓库,向仓库中添加商品,能保证生产日期早的靠

近队头,方便取出。用一个栈作为货架,一个临时栈作为中转,当要进
货时,先将货架上的物品导入临时栈,再将仓库中的物品导入临时栈,
最后将临时栈中的物品导入货架栈,保证生产日期早的商品越靠近栈底。