数据结构(JAVA)课程设计
题 目:
教学计划编制问题
学生姓名:
学 号:
院 系:
计算机与信息工程学院
专业年级: 软件工程专业 2009 级
2011 年 07 月 06 日
1
目录
一.设计目的……………………………………………………3
二.问题描述……………………………………………………3
三.需求分析……………………………………………………3
四.概要设计……………………………………………………4
1.抽象数据类型…………………………………………4
2.功能模块设计…………………………………………7
五.详细设计…………………………………………………7
1.设计思路………………………………………………7
2.程序框架截图…………………………………………8
3.伪码算法………………………………………………10
六.调试分析及心得…………………………………………11
七.测试结果…………………………………………………12
1.测试数据………………………………………………12
2.测试截图………………………………………………12
3.错误测试………………………………………………15
八.核心代码…………………………………………………15
1.主类 Graph_Main2……………………………………15
2.图类 AdjListGraph……………………………………22
2
教学计划编制问题
一.设计目的
(1) 熟练掌握图的创建及遍历基本操作算法。
(2) 熟练掌握拓朴排序算法。
(3) 利用图的基本操作及全排列产生技术模拟教学计划编制程序。
二.问题描述
大学的每个专业都要制定教学计划。假设任何专业都有固定的学习年限,每
学年含两学期,每学期的时间长度和学分上限值均相等。每个专业开设的课程都
是确定的,而且课程在开设时间的安排必须满足先修关系。每门课程有哪些先修
课程是确定的,可以有任意多门,也可以没有。每门课恰好占一个学期。
三.需求分析
1. 运行环境(软、硬件环境)
普通 PC 机,windows 操作系统
2. 输入的形式和输入值的范围
形式:整数
范围:0 到 100
3. 功能描述
本程序的目的是为用户编排课程,根据用户输入的信息来编排出每学期
要学的课程
4.基本要求
(1)输入参数包括:学期总数,一学期的学分上限,每门课的课程号(固定
占 3 位的字母数字串)、学分和直接先修课的课程号。
(2)允许用户指定下列两种编排策略之一:一是使学生在各学期中的学习
负担尽量均匀;二是使课程尽可能地集中在前几个学期中。
(3)若根据给定的条件问题无解,则报告适当的信息;否则将教学计划输
出到用户指定的文件中。计划的表格格式自行设计。
5. 测试数据
学期总数:6;学分上限:10;该专业共开设 12 门课,课程号从 C01 眼
C12,学分顺序为 2,3,4,3,2,3,4,4,7,5,2,3。先修关系图如下:
3
四.概要设计
1.抽象数据类型
4
5
6
2.功能模块设计
五.详细设计
1.设计思路
7
2.程序框架截图
8