2022级数据结构课程设计任务书.docx
《2022级数据结构课程设计任务书.docx》由会员分享,可在线阅读,更多相关《2022级数据结构课程设计任务书.docx(18页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2022级数据结构课程设计任务书 98 修改起泡排序 试修改起泡排序,以交替的正、反两个方向进行扫描。即第一趟把排序码最大的记录放到最末尾,第二趟把排序码最小的记录放到最头上。如此反复进行。 99求出mn矩阵的所有马鞍点。 矩阵A中的元素若满足:Ai,j是第i行中值最小的元素,且又是第j列中值最大的元素,则称元素Ai,j为该矩阵的一个马鞍点。求出mn矩阵的所有马鞍点。 100迷宫求解 在迷宫中求一条路径的算法,基本思想:若当前、位置可通过,则压入栈中,否则探索下一位置,若走不通,则回溯,迷宫大小:M*N。迷宫设置自定义。 101用密钥K对密文C解密得到明文P 设明文P=P0P1P2Pn和密钥K
2、=K0K1K2Km(n=m)中的字符Pi(17FH) 解密: Pi=Ci-Kj (j=i mod (m+1) (当Ci=Kj) Pi=Ci-Kj+80H (j=i mod (m+1) (当CiKj) 102求二叉树中指定两个结点共同的祖先。 求二叉树中指定两个结点共同的祖先。 103 内存分配算法 处理器中有一就绪队列,若干个进程依到达的时刻依次进入就绪队列,每个进程有进程名和处理器处理此进程的所需空间,仿静态链表形式分配内存所需空间,编程序实现内存分配算法。 104 货物进栈、出栈算法 商店货架以栈的形式摆放商品,生产日期越近的越靠近栈底,出栈是从栈顶取货,一天营业结束,如果货架不满,则需上
3、货,如果直接将商品摆放到货架上,则会使生产日期越近的越靠近栈顶.这就需要倒货架,仍使生产日期越近的越靠近栈底。写出货物进栈、出栈算法。 105银行业务模拟问题描述 客户业务分为两种。第一种是申请从银行得到一笔资金,即取款或借款。第二种是向银行投入一笔资金,即存款或还款。银行有两个服务窗口,相应的有两个队列。客户到达银行后先排第一个队。处理每个客户业务时,如果属于第一种,且申请额超出银行现存资金总额而得不到满足,则立即排入第二队等候,直至满足时才离开银行,否则业务处理完后立即离开银行。每接待完一个第二种业务的客户,则顺序检查和处理(如果可能)第二个队列的客户,对能满足的申请者予以满足,不能满足者
4、重新排到第二个队列的队尾。注意,在此检查过程中,一旦银行资金总额少于或等于刚才第一个队列中最后一个客户(第二种业务)被接待之前的数额,或者本次已将第二个队列检查或处理了一遍,就停止检查(因为此时已不可能还有能满足者)转而继续接待第一个队列的客户。任何时刻都只开一个窗口。假设检查不需要时间。营业时间结束时所有客户立即离开银行。写一个上述银行业务的事件驱动模拟系统,通过模拟方法求出客户在银行内逗留的平均时间。 106文章编辑 功能:输入一页文字,程序可以统计出文字、数字、空格的个数。 静态存储一页文章,每行最多不超过80个字符,共N行;要求(1)分别统计出其中英文字母数和空格数及整篇文章总字数;(
5、2)统计某一字符串在文章中出现的次数,并输出该次数;(3)删除某一子串,并将后面的字符前移。 存储结构使用线性表,分别用几个子函数实现相应的功能; 输入数据的形式和范围:可以输入大写、小写的英文字母、任何数字及标点符号。输出形式:(1)分行输出用户输入的各行字符;(2)分4行输出全部字母数、数字个数、空格个数、文章总字数(3)输出删除某一字符串后的文章; 107英文文章检索 该题目是对字符串和文件方面知识的运用,对英文文章实现查找、插入、删除、替换、定位等操作。 要求:对英文文章实现字符串模式匹配算法和文件操作算法。 108 哈希查找 哈希查找是一种有效的查找方法,是与内存地址有关的查找。该题
6、目是对一组任意的关键字进行哈希设置,并且利用多种方式解决冲突。 要求:用不同的方式建立哈希函数,并且用不同的方法解决冲突。 109 B-树模拟实现 该题目是考察 B-树的插入、删除、检索等操作,实现对关键字进行查找的功能。要求:用图形方式对该问题进行模拟。 110基数排序的实现 基数排序是排序算法中一个比较特殊的方法,是对多关键字进行排序有效方法。要求:使用图形模拟基数排序过程。 111外部排序模拟 该题目是考察学生对排序知识的了解,并且对内部排序和外部排序的区别和方法有一定的了解,并能够用文件的知识对其实现和模拟。 要求:用文件的知识模拟外部排序,考虑内存和外存之间的关系。 112中国邮路问
7、题 问题描述:一个邮递员从邮局选好邮件去投递,然后回到邮局。当然他必须经过他所管辖的每条街至少一次。请为他设计一条投递路线,使其所行的路程尽可能地短。 基本要求: (1)设计邮递员的辖区,并将其抽象成图结构进行表示,建立其存储结构。 (注:数据输入可以是键盘输入和文件输入两种方式) (2)按照输入邮局所在位置,为邮递员设计一条最佳投递路线,要能考虑到辖区一般情况。 (3)界面要求:有合理的提示和人机交互。 113八数码 问题描述: 在一个33的九宫中有18这8个数及一个空格随机的摆放在其中的格子里,用户设定一个初始状态和设定一个最终状态,要求动态给出采用A*算法找出的从初始状态变化到最终状态的
8、最优路径,并显示出该算法下所有可能的路径节点。各状态之间变化的调整规则是:每次只能将与空格(上、下、左、右)相邻的一个数字平移到空格中。 A*算法描述:在所有结点对应的f(n) = h(n) + g(n) 中选择f(n)最小值,作为下次选择路径的起点。其中: n:结点的编号。 h(n):与目标状态相比,该状态数码的错位个数。 g(n):搜索的深度,一般根节点(初始状态)的深度是为0, 其他子节点深度为父结点深度加1。 基本要求: (1)从终端输入的8数码的初始状态和最终状态。 如: (2) 显示求解中 的所有结点,并输出 各结点对应的f (n)值; (3) 要求输出从初态移动到终态的最优移动过
9、程(路径)。 (4) 界面友好,函数功能要划分好。 114关键路径问题 问题描述:当一项工程划分为若干个子任务或活动后,人们不仅需要确定这些活动的先后次序,而且需要进一步计算完成整个工程的时间,确定哪些活动是影响工程进度的关键活动,以便合理地组织人力、物力、财力,加快这些活动的进度,为按时或提前完成整个工程提供保证,这就是关键路径问题。关键路径问题相应的网称为AOE 网,其中:顶点表示事件,边表示活动,边上的权表示活动持续的时间。 基本要求: (1)对一个描述工程的AOE 网,建立其存储结构;(注:数据的输入可以是键盘输入或文件输入两种方式) (2)判断该AOE 网是否能够顺利进行。 (3)若
10、该工程能顺利进行,输出完成整项工程至少需要多少时间,以及每一个关键活动所依附的两个顶点、最早发生时间、最迟发生时间。(注:结果的输出可以是屏幕输出和文件输出两种方式) 115最小生成树问题 问题描述:已知一个无向连通网表示n 个城市以及城市间可能设置的通信线路,其中网的顶点表示城市,边表示两个城市之间的线路,赋于边上的权值表示相应的代价。对于n 个点的连通网可以建立许多不同的生成树,每一棵生成树都可以是一个通信网。现在,我们要选择这样一棵生成树,使总的耗费最小。即构造连通网的最小生成树的问题。 基本要求: (1)建立城市交通网的存储结构。(注:数据输入可以是键盘输入或文件输入两种方式) (2)
11、分别用Prim 算法和Kruskal 算法构造最小生成树,并输出最小生成树的代价及生成树的边。(注:结果的输出可以是屏幕输出和文件输出两种方式) (a)初态 5 7 4 6 1 3 8 2 (b)终态 5 6 7 4 8 3 2 1 116校园导游系统 问题描述:设计一个校园导游程序,完成校园信息的维护以及为来访的客人提供信息查询等 服务功能。 基本要求: (1)设计学校的校园平面图,所含景点不少于10个,以图中顶点表示校内各景点,顶点的信息包括:景点名称、代号、简介等,以边表示道路,边上信息包括:两点 距离、所需时间等相关信息。(注:数据的输入可以是键盘输入或文件输入两种方 式) (2)提供
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022 级数 结构 课程设计 任务书
限制150内