软件开发典型案例及其要求(精)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一.求解皇后问题

1.案例简介及其目的

由n2个方块排成n行n列的正方形称为“n元棋盘”。如果两个皇后位于棋盘上的同一行或同一列或同一对角线上,则称她们为互相攻击.现要求找出使n元棋盘上的n个皇后互不攻击的所有布局。

在学习本课程之前,同学们只有“程序”概念,而没有“算法”理念。“程序”只重视结果,忽略了过程。但是,正确的思想、正确的方法和正确的过程才是正确求解问题的保障,这正是“算法”理念之所在。算法设计方法有:(1)列举法(如百鸡问题),(2)归纳法,(3)递推法,(4)回溯法等。本案例的目的就是帮助同学们建立“算法”概念,掌握算法设计方法。

2.实现功能

给定n值,求出 n个皇后在n元棋盘上的所有布局。

3.注意

问题尺度n的取值范围。建议采用回溯法。

二.哈夫曼编码和译码的实现

1.案例简介及其目的

树型结构是一类很重要的非线性数据结构,元素之间存在着一对多的关系,树结构在工程实践中被广泛应用。哈夫曼树是一种特殊的树,它的带权路径最短,因此哈夫曼树也被称为最优树。它可以解决最佳判定问题、编码和译码问题。

本案例通过完成哈夫曼树的构造、编码和译码,进一步理解和掌握:树(特别是哈夫曼树)的逻辑结构和物理存储结构;哈夫曼树构造的规则和算法;哈夫曼树编码和译码的原理。并通过软件实现进一步理解软件工程方法、面向对象的软件开发方法等相关知识。

2.实现功能

运行界面首先要求输入问题尺度(即叶结点数n0)及其相应权值,则可生成并显示哈夫曼树;如输入电文01串,则可译码生成相应的电文文本。

3.注意

问题尺度n0的取值范围。

三.学生信息管理系统

1.案例简介及其目的

数据具有逻辑结构和物理结构,逻辑结构是研究数据元素及其关系的数学特性;物理结构是逻辑结构在计算机中的映象,即具体实现。物理结构分向量(顺序)存储结构和链表存储结构两种,两者具有各自的优缺点,向量存储结构具有顺序存储、随机访问特性,链表存储结构具有随机存储、顺序访问特性。学生信息管理系统中学生信息的逻辑结构是线性表,

物理结构采用链表存储结构。

通过完成学生信息管理系统中学生信息的显示、插入、查找、删除、修改和排序等功能进一步理解和掌握数据的逻辑结构、物理结构和两种物理结构的选择依据等理论知识,并通过软件实现进一步理解软件工程方法、面向对象的软件开发方法等相关知识。

2.实现功能

实现学生信息的查找、修改、插入、删除及排序(按学好或某课程成绩)、显示等功能。

注:三个案例任选一个完成,并于本课程期末考试后一周内提交:提交内容包括运行结果剪屏图,安装文件。提交地址:software329@

相关文档
最新文档