栈和队列的基本操作及其应用
一、实验目的
1、掌握栈和队列的顺序存储结构和链式存储结构,以便在实际中灵
活应用。
2、掌握栈和队列的特点,即后进先出和先进先出的原则。
3、掌握栈和队列的基本运算,如:入栈与出栈,入队与出队等运算
在顺序存储结构和链式存储结构上的实现。
二、实验内容
题目:商品货架管理
[问题描述]
商店货架以栈的方式摆放商品。生产日期越近的越靠近栈底,出货
时从栈顶取货。一天营业结束,如果货架不满,则需上货。入货直接将商
品摆放到货架上,则会使生产日期越近的商品越靠近栈顶。这样就需要
倒货架,使生产日期越近的越靠近栈底。
[基本要求]
设计一个算法,保证每一次上货后始终保持生产日期越近的商品越
靠近栈底。
[实现提示]
可以用一个队列和一个临时栈作为周转。
三、实验前的准备工作
1、掌握栈的逻辑结构和存储结构。
2、熟练掌握栈的出栈、入栈等操作。
3、掌握队列的逻辑结构和存储结构。
4、熟练掌握队列的出队、入队等操作
四、问题分析
用一个队列作为仓库,向仓库中添加商品,能保证生产日期早的靠
近队头,方便取出。用一个栈作为货架,一个临时栈作为中转,当要进
货时,先将货架上的物品导入临时栈,再将仓库中的物品导入临时栈,
最后将临时栈中的物品导入货架栈,保证生产日期早的商品越靠近栈底。