第1章 八皇后问题 1.6.2 算法的时空分析
该算法的运行时间和和皇后的放置方法成正比,在最好情况下的时间和空间复杂度均为O(1),在最差情况下均为O(n*n),平均情况在它们之间。
1.6.3 程序模块构架
本程序模块划分比较合理,且利用指数组存储棋盘,操作方便。至于整体的系统架构,为了简单起见,这样的系统可以分成两个模块,第一个模块是负责模拟问题、提供算法,而另外一个模块则致力于窗口演示,是一个窗体应用程序
1.6.4 程序使用说明
本程序的运行环境为DOS操作系统
进入演示程序后即显示文本方式的用户界面
进入界面后,就会提示输入字符串的输入形式,在八皇后求解程序中,只要你选择输出解的格式,选择1则显示为每一列皇后的放置的行数,,选择2则显示的是以矩阵形式形象的显示皇后的放置位置,选择3则退出程序的调试。在调试结果中,1的位置也就表示了该皇后应该所在的位置,0代表了空位置。
1.6.5测试结果
- 7 -
经济管理学院本科课程设计论文
图1-2 初步运行界面
图1-3 位置标明每一行皇后放置的列数
- 8 -
第1章 八皇后问题
图1-4 位置标明每一行皇后放置的列数
图1-5 视图矩阵形式显示皇后位置
- 9 -
经济管理学院本科课程设计论文 第2章 停车场管理问
2.1要解决的问题
停车场是一条可以停放n辆车的狭窄通道,且只有一个大门汽车停放安到达时间的先后依次由北向南排列(大门在最南端,最先到达的第一辆车停在最北端)若停车场已经停满n辆车,后来的汽车在便道上等候,一旦有车开走,排在便道上的第一辆车可以开入;当停车场的某辆车要离开时,停在他后面的车要先后退为他让路,等它开出后其他车在按照原次序开入车场,每两停在车场的车要安时间长短缴费。 要求:以栈模拟停车场,以队列车场外的便道,按照从终端输入的数据序列进行模拟管理。每一组数据包括三个数据项:汽车“到达”或“离去”信息、汽车牌照号码、以及到达或离去的时刻。对每一组数据进行操作后的信息为:若是车辆到达,则输出汽车在停车场的内或便道上的位置:若是车辆离去则输出汽车在停车场内的停留时间和应缴纳的费用(在便道上的停留时间不收费)。栈以顺序结构实现,队列以链表结构实现。
2.2基本要求
2.2.1解决问题的思路及要求
以栈模拟停车场,以队列模拟车场外的便道,按照从终端读入的输入
数据序列进行模拟管理。每一组输入数据包括三个数据项:汽车到达或离去信息,汽车牌照号码以及到达或离去的时刻。对每一组输入数据进行操作后的输出信息为:在停车场内停留的时间和应交纳的费用(在便道上停留的时间不收费)。栈以顺序结构实现,队列以链表结构实现。
- 10 -
第2章 停车场管理问 2.2.2对栈的要求
需要另设一个栈,临时停放为离去的汽车让路而从停车场退出来的汽车,也 用顺序存储结构实现。栈中每个元素表示一辆汽车,包含两个数据项:汽车的牌照号码和进入停车场的时刻
2.2.3算法流程图
- 11 -