!数据结构实验大作业考核要求
数据结构综合实验题目及要求

数据结构综合实验设计题目及要求一、要求本次课程设计可以从以下的题目中任选其一,每个题目基本实现的要求是:1、程序设计书(Word格式)。
包括程序设计目标、问题描述、需求分析、概要设计、详细设计、源程序清单(要求格式整齐400行以上,要有注释说明)、软件说明书(给出软件如何使用,使用时的注意事项)、测试报告(每个函数的功能测试,输入条件,输出结果)和总结。
2、可执行程序源代码。
二、设计题目题目一仓库管理系统(线性表应用)[问题描述]建立一个仓库管理程序,可以按顺序和货物名称查询仓库存储情况,也可以增加或删除货物以及建立新的仓库存储系统。
[实现提示]可以采用双向链表的存储结构,如可定义如下的存储结构:typedef struct dnode /*定义双向链表结构体*/{int number; /*货物编号*/char name[max]; /*货物名称*/int counter; /*货物数量*/struct dnode *prior,*next; /*定义两指针,分别指向其前驱和后继*/}dlnode;题目二单位员工通讯录管理系统(线性表应用)[问题描述]为某个单位建立一个员工通讯录管理系统,可以方便查询每一个员工的办公室电话、手机号、及电子邮箱。
其功能包括通讯录链表的建立、员工通讯信息的查询、修改、插入与删除、以及整个通讯录表的输出。
[实现提示]可以采用单链表的存储结构,如可定义如下的存储结构:typedef struct { /*员工通讯信息的结构类型定义*/char num[5]; /*员工编号*/char name[10]; /*员工姓名*/char phone[15]; /*办公室电话号码*/char call[15]; /*手机号码*/}DataType;/*通讯录单链表的结点类型*/typedef struct node{ DataType data; /*结点的数据域*/struct node *next; /*结点的指针域*/}ListNode,*LinkList;题目三哈夫曼编码/译码系统(树应用)[问题描述]利用哈夫曼编码进行通信,可以压缩通信的数据量,提高传输效率,缩短信息的传输时间,还有一定的保密性。
数据结构上机考试题目及要求

数据结构上机实验考试标准一、评分标准:1.根据考试完成情况,参考平时上机情况评定优、良、中、及格、不及格5个档。
2.成绩分布比例近似为:优15%、良30%、中30%、及格20%、不及格<10%二、评分原则:1.充分参考平时实验完成情况,结合如下原则给出成绩;2.只完成第一题,成绩为良以下成绩(中、及格),若平时上机情况很好,可以考虑良好;3.两道题都完成,成绩为良及以上(优、良),根据完成质量和完成时间给成绩;4.如未完成任何程序,则不及格(根据平时成绩将不及格率控制在10%以下);三、监考要求:1.考试前,要求学生检查电脑是否工作正常,如果不正常及时解决,待所有考生均可正常考试后再发布试题。
2.平时上机完成的程序可以在考试过程直接调用,在考试开始前复制到硬盘当中,考试过程中可以看教材。
3.考试开始后向学生分发考题的电子文档,同时宣读试题,学生可以通过网络或磁盘拷贝试题。
4.考试开始十五分钟之后把网络断开,学生不得再使用任何形式的磁盘。
5.程序检查时,记录其完成时间和完成情况。
除检查执行情况外,还要求学生对代码进行简要讲解,核实其对代码的理解情况和设计思想,两项均合格方视为试题完成。
6.完成考试的学生须关闭电脑立刻离开考场,考试成绩由教务办统一公布,负责教师不在考试现场公布成绩。
数据结构上机实验考试题目(2011年12月23日)题目1.设C={a1,b1,a2,b2,…,a n,b n}为一线性表,采用带头结点的单链表hc(hc为C链表的头指针)存放,设计一个算法,将其拆分为两个线性表(它们都用带头结点的单链表存放),使得:A={a1,a2,…,a n},B={b n,b n-1,…,b1}。
[例] C链表为:C={1,2,3,4,5,6,7,8,9,10}拆分后的A、B链表如下:A={1,3,5,7,9},B={10,8,6,4,2}。
要求:算法的空间复杂度为O(1)。
即利用C链表原来的空间。
天大2016年12月《数据结构》期末大作业考核要求

数据结构要求:1. 独立完成,作答时要按照模版信息....填写完整,写明题型、题号;2. 作答方式:手写作答或电脑录入,使用学院统一模版(模版详见附件);3. 提交方式:以下两种方式任选其一,1) 手写作答的同学可以将作业以图片形式打包压缩上传; 2) 提交电子文档的同学可以将作业以word 文档格式上传;4. 上传文件命名为“中心-学号-姓名-科目.rar ” 或“中心-学号-姓名-科目.doc ”;5. 文件容量大小:不得超过10MB 。
请在以下几组题目中,任选一组题目作答,满分100分。
第一组:一、编程题(每小题30分,共60分)(一) 设顺序表L 是一个递增有序表,试写一算法,将x 插入L 中,并使L 仍是一个有序表。
(二) 用标准C 语言实现Hanoi 塔问题二、解答题(20分)(一)对下面的带权无向图采用prim 算法从顶点①开始构造最小生成树。
(写出加入生成树顶点集合S 和选择Edge 的顺序)①9 10② 7 ③5 6 7④ ⑤11 8三、画图题(20分)(一)将给定的图简化为最小的生成树,要求从顶点1出发。
第二组:一、编程题(每小题30分,共60分)(一)对于二维整数数组A[m][n],对下列三种情况,分别编写相应的函数。
1.求数组所有边缘元素的数值和。
int sum1(int A[M][N],int m ,int n) {2.求从A[0][0]开始的互不相邻的所有元素的和注:一个元素的八个方向上的第一个元素均为相邻元素。
int sum2 (int A[M][N] , int m , int n) {3. 假定m=n ,并为偶数,请分别计算正、反两条对角线上的元素值之和。
int sum3(int A[M][N] , int n) {(二)1.设计在单链表中删除值相同的多余结点的算法。
2.设计一个求结点x在二叉树中的双亲结点算法。
二、解答题(20分)(一)已知一棵二叉树的先序序列是ABCDEFGHIJK,中序序列是CDBGFEAHJIK,请构造出该二叉树。
《数据结构》实验要求与规范

《数据结构》实验要求与规范【基本要求】1.正确实现所要求的功能,按时提交实验报告。
2.实验报告内容应依次包括:⑴实验目的;⑵实验内容与要求;⑶数据结构设计;⑷算法设计;⑸测试结果;⑹心得体会。
3.程序用C语言或C++语言实现。
4.在包含主函数的程序文件起始处添加包含如下内容的注释:所引用代码和资料的出处、设计本程序时谁在哪些地方帮助过你。
5.在程序文件起始处添加包含如下内容的注释:文件名称、创建者姓名班级学号、创建时间、最后修改时间、文件中所定义的函数的名称和主要功能、文件中所定义的全局变量的变量名和主要功能、文件中用到的他处定义的全局变量及其出处、与其他文件的依赖关系。
6.对每个函数添加包含如下内容的注释:函数名称、函数主要功能、函数调用之前的预备条件、函数的输入参数、函数的输出参数、函数的返回值、该函数与其它函数的调用和被调用关系。
// 、姓名:陈明琨班级:计科4班学号12 参考数据结构课本及部分网络文库实验二顺序表的实现和应用实验目的:⑴熟悉线性表的定义和基本操作;⑵掌握线性表的顺序存储结构设计与基本操作的实现。
实验内容与要求:⑴定义线性表的顺序存储表示;⑵基于所设计的存储结构实现线性表的基本操作;⑶编写一个主程序对所实现的线性表进行测试;⑷线性表的应用:①设线性表L1和L2分别代表集合A和B,试设计算法求A和B的并集C,并用线性表L3代表集合C;②(选做)设线性表L1和L2中的数据元素为整数,且均已按值非递减有序排列,试设计算法对L1和L2进行合并,用线性表L3保存合并结果,要求L3中的数据元素也按值非递减有序排列。
实验三、四链表的实现和应用实验目的:掌握线性表的链式存储结构设计与基本操作的实现。
实验内容与要求:⑴定义线性表的链式存储表示;⑵基于所设计的存储结构实现线性表的基本操作;⑶编写一个主程序对所实现的线性表进行测试;⑷线性表的应用:①设线性表L1和L2分别代表集合A和B,试设计算法求A和B的并集C,并用线性表L3代表集合C;②设线性表L1和L2中的数据元素为整数,且均已按值非递减有序排列,试设计算法对L1和L2进行合并,用线性表L3保存合并结果,要求L3中的数据元素也按值非递减有序排列。
数据结构大作业

数据结构大作业在计算机科学领域中,数据结构是非常重要的一个概念。
它是指组织和存储数据的方式,以及对数据进行操作的方法。
数据结构的选择与实现直接影响着算法的复杂度和程序的性能。
因此,在学习数据结构的过程中,一般都会有相应的大作业,以帮助学生更好地理解和应用所学的知识。
本篇文章将重点介绍数据结构大作业的一般要求和一种可能的实现方案,供读者参考。
一、数据结构大作业要求数据结构大作业一般旨在让学生将所学的数据结构知识应用于实际问题的解决。
作业要求通常包括以下几个方面:1. 题目选择:作业题目需要涵盖数据结构的各个方面,例如链表、栈、队列、树、图等等。
题目应具备一定的难度,能够考察学生对数据结构的理解和运用能力。
2. 实现方式:学生需要根据题目要求选择合适的数据结构和算法,并进行实现。
一般要求使用编程语言来完成实现,并给出相应的代码。
3. 功能要求:作业题目通常会要求实现某些特定的功能或解决某些问题。
学生需要确保所实现的程序能够满足这些功能需求,并能正确运行。
4. 性能评估:作业可能会要求对所实现的程序进行性能评估,比如时间复杂度、空间复杂度等。
学生需要能够分析和解释程序的性能,并对可能的改进方法进行讨论。
5. 报告撰写:作业一般要求学生完成一份报告,对所实现的程序进行详细的说明和分析。
报告需要包括程序设计思路、实现细节、运行结果以及遇到的问题和解决方法等。
二、数据结构大作业实现方案示例以下是一个可能的数据结构大作业实现方案示例,以一个简化的社交网络系统为题目:1. 题目描述:设计一个基于图的社交网络系统,能够实现用户的注册、好友关系的建立和查询、用户之间的消息传递等功能。
2. 数据结构选择:可以使用图的数据结构来存储用户和好友关系的信息,使用链表来存储用户的消息队列。
3. 算法实现:根据题目要求,需要实现用户注册、好友关系的建立和查询、消息传递等功能的算法。
可以使用深度优先搜索或广度优先搜索算法来查找用户的好友关系,使用链表来实现用户消息的发送和接收。
数据结构课程实验内容与要求

《数据结构》课程实验内容与要求一、课程简介本课程着重讲述①线性结构、树型结构、图等典型数据结构的逻辑特点、存储结构及其相应的基本算法。
②各种查找算法③典型内部排序算法。
二、实验的作用、地位和目的数据结构是一门技术基础课,通过实验深刻理解各种逻辑结构、存储结构的特性,培养为实际问题分析其数据对象、基本操作,选择逻辑结构、存储结构灵活应用基本算法,设计出具有专业水准的应用程序的能力。
三、实验方式与要求①首先要求学生在课下完成问题分析、算法设计,基本完成程序设计。
②实验时,每位学生使用一台微机,独立调试,完成程序。
③程序调试好后,由指导教师检测运行结果,并要求学生回答相关的问题。
教师评出检查成绩。
④学生记录程序的输入数据,运行结果及源程序。
⑤在一周内完成实验报告。
四、考核方式与实验报告要求实验成绩由指导教师根据学生的实验完成情况、源程序质量、回答问题情况、实验报告质量、实验纪律等方面给分。
学生在实验后的一周内提交实验报告。
实验报告首页按学校统一印刷的实验报告模版书写。
实验报告中应包括如下内容:实验内容按任课教师下达的实验任务填写(具体实验题目和要求);实验过程与实验结果应包括如下主要内容:算法设计思路简介算法描述:可以用自然语言、伪代码或流程图等方式算法的实现和测试结果:包括算法运行时的输入、输出,实验中出现的问题及解决办法等源程序清单与实验结果或其它说明可打印,并装订在实验报告首页之后。
实验报告雷同者,本次实验成绩为0分或雷同实验报告平分得分五、实验的软硬件环境硬件环境:PⅡ以上微型计算机软件环境:Windows98/2000,VC++6.0或turbo C六、实验内容安排实验一线性表应用实验时间:2012年3月16日,7-8节(地点:7-215)实验目的:理解线性表的逻辑特点;掌握顺序表、链表存储结构,以及线性表的基本操作,如插入、删除、查找,以及线性表合并等操作在顺序存储结构和链式存储结构上的实现算法,并能够在实际问题背景下的灵活运用线性表来解决问题,实现相应算法。
《数据结构》实验指导书

《数据结构》实验指导书软件学院2011年9月概述实习目的和要求《数据结构》在计算机科学中是一门实践性较强的专业基础课, 上机实习是对学生的一种全面综合训练, 是与课堂听讲、自习和练习相辅相成的必不可少的一个教学环节。
实习着眼于原理与应用的结合, 使学生学会把学到的知识用于解决实际问题, 起到深化理解和灵活掌握教学内容的目的。
同时, 通过本课程的上机实习, 使学生在程序设计方法及上机操作等基本技能和科学作风方面受到比较系统和严格的训练。
实习包括的步骤1. 简要描述题目要求, 对问题的描述应避开算法及所涉及的数据类型, 只是对所需完成的任务做出明确的陈述, 例如输入数据的类型、值的范围以及输入的形式, 输出数据的类型、值的范围以及输出的形式。
2. 选定数据结构, 写出算法, 根据自顶向下发展算法的方法, 首先描述算法的基本思想, 然后进行算法细化, 再对所设计的算法的时间复杂性和空间复杂性进行简单分析。
3. 准备好上机所需的程序, 选定一种程序设计语言(如C 语言), 手工编好上机程序, 并进行反复检查, 使程序中的逻辑错误和语法错误减少到最低程度。
对程序中有疑问的地方, 应做出标记, 以便在上机时给予注意。
4.上机输入和调试程序, 在调试程序过程中除了系统的问题以外, 一般应自己独立解决。
在程序调试通过后, 打印输出程序清单和运行结果。
5.上机结束后, 总结和整理实习报告。
实习报告的内容1.简述题目要解决的问题是什么, 并说明输入和输出数据的形式。
2.简述存储结构和算法的基本思想。
3.列出调试通过的源程序。
4.列出上面程序对应的运行结果。
分析程序的优缺点、时空性能以及改进思想, 写出心得体会。
实验一线性表一. 目的与要求本次实习的主要目的是为了使学生熟练掌握线性表的基本操作在顺序存储结构和链式存储结构上的实现, 提高分析和解决问题的能力。
要求仔细阅读并理解下列例题, 上机通过, 并观察其结果, 然后独立完成后面的实习题。
数据结构大作业题目及要求

一、Josephu 问题Josephu 问题为:设编号为1,2,…n的n个人围坐一圈,约定编号为k(1<=k<=n)的人从1开始报数,数到m 的那个人出列,它的下一位又从1开始报数,数到m的那个人又出列,依次类推,直到所有人出列为止,由此产生一个出队编号的序列。
提示:用一个不带头结点的循环链表来处理Josephu 问题:先构成一个有n个结点的单循环链表,然后由k结点起从1开始计数,计到m时,对应结点从链表中删除,然后再从被删除结点的下一个结点又从1开始计数,直到最后一个结点从链表中删除算法结束。
二、稀疏矩阵的操作基本功能要求:稀疏矩阵采用三元组表示,求两个具有相同行列数的稀疏矩阵A和B的相加矩阵C,并输出C,求出A的转置矩阵D,输出D。
三、背包问题的求解:假设有一个能装入总体积为T的背包和n件体积分别为w1 , w2 , …, wn 的物品,能否从n件物品中挑选若干件恰好装满背包,即使w1 +w2 + …+ wn=T,要求找出所有满足上述条件的解。
例如:当T=10,各件物品的体积{1,8,4,3,5,2}时,可找到下列4组解:(1,4,3,2)(1,4,5)(8,2)(3,5,2)。
提示:可利用回溯法的设计思想来解决背包问题。
首先将物品排成一列,然后顺序选取物品装入背包,假设已选取了前i 件物品之后背包还没有装满,则继续选取第i+1件物品,若该件物品"太大"不能装入,则弃之而继续选取下一件,直至背包装满为止。
但如果在剩余的物品中找不到合适的物品以填满背包,则说明"刚刚"装入背包的那件物品"不合适",应将它取出"弃之一边",继续再从"它之后"的物品中选取,如此重复,,直至求得满足条件的解,或者无解。
由于回溯求解的规则规则是"后进先出"因此自然要用到栈。
四、n皇后问题问题描述:求出在一个n×n的棋盘上,放置n个不能互相捕捉的国际象棋"皇后"的所有布局要求:试编写程序实现将n个皇后放置在国际象棋棋盘的无冲突的位置上的算法,并给出所有的解。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
通知:请大家在一周内将数据结构实验大作业的题目定下来,作业题目在同一个班内不允许重复!截至日期为5月8日。
请大家将题目报给项美康,由项美康把关作业题目不重复的要求,先报先得。
必须每人单独一个题目,独立完成!每个同学必须当着全班同学现场PPT 讲解和代码演示大作业。
如果要做供选题目之外的题目,也请先报给项美康,并请她特殊标记一下,然后规划一下自己的题目,即按照供选题目的格式写好【问题描述】、【基本要求】、【测试数据】),尽快与我具体沟通商榷确认。
大作业评分依据:
1) 难度:数据结构+算法
2) 工作量:代码量+测试数据
3) 系统设计:新颖性,有自己的思考和观察,方便、美观
4) 课堂之外需要补充的新知识量-自学能力
5) 大作业写作的规范性和系统演示表达能力
大作业报告的内容:
1.作业题目、目标和内容简介:
系统功能,输入,输出
2.讲解系统中涉及的数据结构和算法,自学的内容
结合系统功能和代码的详细演示来给予展示
3.系统存在的优缺点:
从执行速度、计算的准确性和操作的方便性来分析
4.总结自己的感受和收获
上交材料包括
(1)大作业报告纸质版,
(2)大作业报告电子版,
(3)完整的软件系统和代码以及测试数据,
(4)大作业汇报PPT。
5.23开始接收作业上交!。