《数据结构(java版)》课程设计任务书

上传人:marr****208 文档编号:118758000 上传时间:2019-12-25 格式:DOC 页数:9 大小:67KB
返回 下载 相关 举报
《数据结构(java版)》课程设计任务书_第1页
第1页 / 共9页
《数据结构(java版)》课程设计任务书_第2页
第2页 / 共9页
《数据结构(java版)》课程设计任务书_第3页
第3页 / 共9页
《数据结构(java版)》课程设计任务书_第4页
第4页 / 共9页
《数据结构(java版)》课程设计任务书_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《《数据结构(java版)》课程设计任务书》由会员分享,可在线阅读,更多相关《《数据结构(java版)》课程设计任务书(9页珍藏版)》请在金锄头文库上搜索。

1、课程设计任务书 课 程 名 称 数据结构 院(系、部、中心) 计算机工程学院 专 业 计算机科学与技术 班 级 软件101 起 止 日 期 2011.12.1212.16 指 导 教 师 叶核亚 1课程设计应达到的目的课程设计是巩固所学理论知识、提高程序设计能力的重要实践环节。数据结构课程设计的目的是,深入理解数据结构的基本理论,掌握对数据结构各种操作的算法设计方法,增强对基础知识和基本方法的综合运用能力,增强对算法的理解能力,提高软件设计能力,在实践中培养独立分析问题和解决问题的作风和能力。2课程设计题目及要求数据结构课程设计的要求是,综合运用数据结构的基础知识和算法设计的基本原则,独立编制

2、一个具有中等规模的、一定难度的、解决实际问题的应用程序;通过题意分析、选择数据结构、算法设计、编制程序、调试程序、软件测试、结果分析、撰写课程设计报告等环节完成软件设计的全过程,完善算法并提高程序性能。参考选题及要求说明如下,选题次序的规则由各班级约定,要求每人一题,不重复,带*题较难。(1) 多边形表示和运算(顺序表)声明多边形类Polygon,使用顺序表存储多边形的多个坐标点Point类,支持插入、删除点,实现求多边形周长、面积等运算,以及共用边的两个多边形合并等操作,分析算法效率。(2) 多边形表示和运算(单链表)(3) 多边形表示和运算(循环双链表)(4) 学生成绩表的存储和管理(排序

3、顺序表)声明学生类Student,使用排序顺序表存储和管理学生成绩表,实现以下功能: 提供学生对象的插入、删除、查找操作。 存储和管理学生的多门课程成绩。 提供学生成绩查询操作。 提供统计指定课程的平均值功能。 提供指定课程按优秀、良好、中等、及格、不及格五个等级统计人数功能。 指定学生成绩表按学号排序,或按成绩排序。 将学生信息写入记录文件,并能够从记录文件中读取学生信息。(5) 学生成绩表的存储和管理(单链表)(6) 学生成绩表的存储和管理(双链表)(7) 学生成绩表的存储和管理(循环双链表)(8) 学生成绩表的存储和管理(索引单链表(类似图的邻接表)(9) 学生成绩表的存储和管理(二叉排

4、序树)(10) 二元多项式的表示和运算(排序顺序表)使用排序顺序表存储二元多项式,实现二元多项式相加和相乘等运算,分析算法效率。(11) 二元多项式的表示和运算(排序单链表)使用排序单链表存储二元多项式,实现二元多项式相加和相乘等运算,分析算法效率。(12) 二元多项式的表示和运算(排序循环双链表)(13) 三元多项式的表示和运算(排序顺序表)使用排序顺序表存储三元多项式,实现三元多项式相加和相乘等运算,分析算法效率。(14) 三元多项式的表示和运算(排序单链表)(15) 三元多项式的表示和运算(排序循环双链表)(16) *m元多项式的表示和运算(17) 字符串查找和替换实现文本文件的查找和替

5、换字符串功能,并设置区分大小写、全字匹配、使用通配符等选项。(18) 使用栈计算表达式值改进例4.2计算表达式值,要求同时使用运算符栈和操作数栈,省略转换成后缀表达式过程,并增加关系等运算符,为各运算符约定优先级,设置若干优先级。将运算符及其优先级声明为运算符对象。(19) 求解素数环问题的所有解完善例4.3,给定一个初始序列,采用回溯法求解素数环问题的所有解。(20) *用递归算法求表达式值表达式的BNF语法定义见实验4。要求增加关系等运算符,为各运算符约定优先级,设置若干优先级。将运算符及其优先级声明为运算符对象。(21) *带变量的表达式求值设一个表达式中带有多个变量标识符,要求: 识别

6、出其中所有变量标识符; 为所有变量标识符设置取值; 对于任意一组变量取值,求得表达式的运算结果值。(22) 矩阵类例5.1矩阵类增加深拷贝构造函数、矩阵相加(+)、矩阵转置、判断三角矩阵、判断对称矩阵、判断矩阵相等、矩阵相乘等功能。(23) 压缩存储下三角矩阵线性压缩存储下三角矩阵,实现构造函数、深拷贝、矩阵相加(+=和+)、比较相等、转置等功能。(24) 压缩存储上三角矩阵使用三角形的动态二维数组压缩存储上三角矩阵,实现构造函数、深拷贝、矩阵相加(+=和+)、比较相等、转置等功能。(25) 稀疏矩阵三元组顺序表稀疏矩阵三元组顺序表类增加深拷贝构造函数、矩阵相加(+)、比较相等、转置等功能。(

7、26) 稀疏矩阵三元组排序顺序表使用排序顺序表作为成员变量声明稀疏矩阵三元组顺序表类,实现构造、深拷贝、矩阵相加(+=和+)、比较相等、转置等功能。(27) 稀疏矩阵三元组单链表使用单链表作为成员变量声明稀疏矩阵三元组单链表类,实现构造、深拷贝、矩阵相加(+=和+)、比较相等、转置等功能。(28) 稀疏矩阵三元组排序单链表使用排序单链表作为成员变量声明稀疏矩阵三元组单链表类,实现构造、深拷贝、矩阵相加(+=和+)、比较相等、转置等功能。(29) 稀疏矩阵三元组双链表使用双链表作为成员变量声明稀疏矩阵三元组双链表类,实现构造、深拷贝、矩阵相加(+=和+)、比较相等、转置等功能。(30) 稀疏矩阵

8、三元组排序双链表使用排序双链表作为成员变量声明稀疏矩阵三元组双链表类,实现构造、深拷贝、矩阵相加(+=和+)、比较相等、转置等功能。(31) 稀疏矩阵三元组循环双链表使用循环双链表作为成员变量声明稀疏矩阵三元组循环双链表类,实现构造、深拷贝、矩阵相加(+=和+)、比较相等、转置等功能。(32) 稀疏矩阵三元组排序循环双链表使用排序循环双链表作为成员变量声明稀疏矩阵三元组循环双链表类,实现构造、深拷贝、矩阵相加(+=和+)、比较相等、转置等功能。(33) 稀疏矩阵行的单链表稀疏矩阵行的单链表类增加矩阵相加(+)、转置等功能。(34) 稀疏矩阵行的单链表使用排序单链表作为成员变量声明稀疏矩阵行的单

9、链表类,实现构造、深拷贝、矩阵相加(+=和+)、比较相等、转置等功能。(35) 稀疏矩阵行的双链表使用双链表作为成员变量声明稀疏矩阵行的双链表类,实现构造、深拷贝、矩阵相加(+=和+)、比较相等、转置等功能。(36) 稀疏矩阵行的双链表使用排序循环双链表作为成员变量声明稀疏矩阵行的双链表类,实现构造、深拷贝、矩阵相加(+=和+)、比较相等、转置等功能。(37) 稀疏矩阵列的单链表声明稀疏矩阵三元组列的单链表类,实现构造、深拷贝、矩阵相加(+=和+)、比较相等、转置等功能。(38) 稀疏矩阵列的单链表使用排序单链表作为成员变量声明稀疏矩阵三元组列的单链表类,实现构造、深拷贝、矩阵相加(+=和+)

10、、比较相等、转置等功能。(39) 稀疏矩阵列的双链表使用循环双链表作为成员变量声明稀疏矩阵三元组列的双链表类,实现构造、深拷贝、矩阵相加(+=和+)、比较相等、转置等功能。(40) 稀疏矩阵列的双链表使用排序循环双链表作为成员变量声明稀疏矩阵三元组列的双链表类,实现构造、深拷贝、矩阵相加(+=和+)、比较相等、转置等功能。(41) *稀疏矩阵三元组十字链表稀疏矩阵三元组十字链表类增加深拷贝、矩阵相加(+)、比较相等、转置等功能。(42) *不带表名的广义表以广义表双链表示不带表名的广义表类,增加广义表的删除、查找原子、比较相等、复制等操作;并增加功能,使之能表示递归表。(43) *带表名的广义

11、表声明以广义表双链表示带表名的广义表类,实现广义表的遍历、插入、删除、查找原子、比较相等、复制等操作;并增加功能,使之能表示递归表。(44) 求二叉树中两结点最近的共同祖先结点采用二叉链表表示二叉树,返回两结点最近的共同祖先结点,判断是否子树。(45) 求一棵二叉树的所有直径及其路径长度(46) 静态三叉链表表示的二叉树声明静态三叉链表表示的二叉树类,实现第6章二叉树的基本操作,以及求最近祖先结点、求直径、以广义表构造并输出二叉树、判断是否为完全二叉树等操作,并与二叉链表存储结构进行比较。(47) *表达式二叉树采用创建表达式二叉树的方法计算表达式值。要求增加关系等运算符,为各运算符约定优先级

12、,设置若干优先级。将运算符及其优先级声明为运算符对象。(48) 中序线索二叉树采用三叉链表结构表示中序线索二叉树,实现插入、删除、求父母结点等操作。(49) 先序线索二叉树构造先序线索二叉树,实现求后继结点、遍历、插入、删除、求父母结点等操作。(50) 后序线索二叉树构造后序线索二叉树,实现求前驱结点、遍历、插入、删除、求父母结点等操作。(51) *给定一个文本文件,统计其中字符使用频率,建立一棵Huffman树,采用变长的二进制位串表示字符的Huffman编码,计算压缩比,并设计Huffman编码的译码算法。(52) 采用三叉链表表示构造一棵Huffman树并求编码。(53) 树的父母孩子链

13、表存储(横向凹入构造)以父母孩子链表存储树,以树的横向凹入表示构造或输出一棵树,支持插入结点和删除子树,判断是否子树。(54) 树的父母孩子链表存储(广义表构造)以父母孩子链表存储树,以树的广义表(字符串)表示构造或输出一棵树,支持插入结点和删除子树,判断是否子树。(55) 树的父母孩子兄弟三叉链表(横向凹入构造)为树的孩子兄弟链表结点增加指向父母结点的链,构成树的父母孩子兄弟三叉链表存储结构,以树的横向凹入表示构造或输出一棵树,支持插入结点和删除子树,判断是否子树。(56) 树的父母孩子兄弟三叉链表(广义表构造)以父母孩子兄弟三叉链表存储树,以树的广义表(字符串)表示构造或输出一棵树,支持插入结点和删除子树,判断是否子树。(57) 求树中两个结点最近的共同祖先结点,树的父母孩子链表存储。(58) 求树中两个结点最近的共同祖先结点,树的孩子兄弟链表存储。(59) 求树中两个结点最近的共同祖先结点,树的父母孩

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号