实验栈排列递归设计
【问题描述】
编写一个算法, 输出指定栈中的栈底元素, 并使得原栈中的元素倒置。
【基本要求】
(1) 正确理解栈的先进后出的操作特点, 建立初始栈, 通过相关操作显示栈底元素。
(2) 程序中要体现出建栈过程和取出栈底元素后恢复栈的入栈过程, 按堆栈的操作规则
打印结果栈中的元素。
【实验步骤】
(1) 建立顺序栈 SeqStack, 存放测试数据; 建立队列 SeqQueue 存放出栈数据;
(2) 建立 InitStack、 StackEmpty、 StackFull、 Pop、 Push、 GetTop 函数用作顺序栈的
基本操作;
(3) 建立 InitQueue、 QEmpty、 Qfull、 InQueue、 OutQueue、 ReadFront 函数用作队列的
基本操作;
(4) 建立主函数依次按序对子函数进行操作: InitStack 初始化栈→Push 压入数据→
InitQueue 初始化队列→Pop 弹出数据→InQueue 存入队列→OutQueue 出队列→Push 压入栈→
Pop 弹出数据→free 清空栈与队列。 在数据的输入与数据的输出时提供必要的提示信息。
(5) 使用 Visual Studio C++ 2005 语言环境进行调试, 源代码 P202-2-1. cpp 通过编译
生成目标文件 P202-2-1. obj, 运行可执行文件: 实验 2-2-1. exe 测试通过。
点点赞赏,手留余香
给TA打赏
请先
!