2009《数据结构A》实验大纲(黄刚)
《数据结构》实验教学大纲
《数据结构》实验教学大纲
1、实验背景:
数据结构是计算机科学的基本理论,也是计算机程序设计必备知识,
是计算机应用和算法分析的基础。
实验教学是对学生知识的指导,是计算
机程序设计实践的重要组成部分。
它是学生掌握程序设计理论知识,发展
良好的分析思维能力,培养解决问题的能力的重要途径。
本实验教学大纲
是以C语言为编程语言,以实验室的应用为主要训练,以有关数据结构课
程实验内容为主要内容,主要包括数组、线性表、栈与队列、字符串、树、图等知识,以及基于C语言的实践性实验项目,旨在让学生更深入地了解
数据结构,进而加深对电脑程序设计的理解,从而掌握计算机软件设计开
发的知识、技能和能力。
2、实验任务:
1)在学习原理部分,学习基本的数据结构知识,掌握数组、线性表、栈与队列、字符串、树、图等基本数据结构,了解数据结构的存储结构及
其基本操作;
2)在实践部分,基于C语言,让学生掌握实验的设计思路,学习程
序的设计和编码,在解决实际问题中加深对基本数据结构基础理论的理解。
数据结构实验大纲
数据结构实验大纲《数据结构A》实验大纲课程编码:07040021课程英文名:Data Structure A适用专业:计算机科学与技术本科、网络工程本科、计算机科学与技术(师范)本科实验学时:16学时学分:0.5学分一、实验课程的性质、目的和任务数据结构是计算机专业的一门核心课程,是计算机及相关专业的重要的基础理论课程。
该课程既有较强的理论,又要联系实际。
通过《数据结构》实验的开设,使学生学会分析数据的特性,给出数据结构的描述,写出相应的算法,培养和训练学生编写复杂程序的能力,使学生的编程能力有一个质的提高。
二、实验环境1、硬件:计算机2、软件:vc6.0三、实验内容:实验1抽象数据类型的实现实验(一)实验目的要求1. 了解结构体和抽象数据类型(ADT)的基本概念,及描述方法。
2. 通过对复数抽象数据类型ADT的实现,熟悉VC环境(掌握结构体类型),为以后章节的学习打下基础。
(二)实验学时:2 学时(三)实验类型:验证(四)实验内容1.复数抽象数据类型ADT的描述及实现。
[复数ADT的描述]ADT complex{数据对象:D={ c1,c2 c1,c2∈FloatSet }数据关系:R={ c1 c2 }基本操作:创建一个复数 creat(a);输出一个复数 outputc(a);求两个复数相加之和 add(a,b);求两个复数相减之差 sub(a,b);求两个复数相乘之积 chengji(a,b);等等;} ADT complex;2. 复数ADT实现的源程序如下:#include#include/* 存储表示,结构体类型的定义 */ typedef struct{ float x; /* 实部子域 */float y; /* 虚部的实系数子域 */}comp;/* 子函数的原型声明 */void creat(comp *c);void outputc(comp a);comp add(comp k,comp h);/* 主函数 */main(){ creat(&a); outputc(a);creat(&b); outputc(b);a1=add(a,b); outputc(a1);} /* maijn *//* 创建一个复数 */void creat(comp *c){ float c1,c2;printf("输入实部real x=?");scanf("%f",&c1);printf("输入虚部xvpu y=?");scanf("%f",&c2);(*c).x=c1; c ->y=c2;} /* creat *//* 输出一个复数 */void outputc(comp a){ printf("\n %f+%f i \n\n",a.x,a.y);}/* 求两个复数相加之和 */comp add(comp k,comp h){ comp l;l.x=k.x+h.x; l.y=k.y+h.y;return(l);} /* add */3.将上面源程序输入计算机,进行调试。
数据结构实验指导书(2009)
《数据结构与算法》实验指导书马晓波秦俊平刘利民编内蒙古工业大学信息工程学院计算机系2009年3月1日《数据结构与算法》实验教学大纲三、实验目的、内容与要求实验一线性表的创建与访问算法设计(4学时)(一)实验目的数据结构于算法实验是计算机类本科学生计算机软件知识重要的实验环节,它将使学生从实践上学会用高级语言程序设计、实现复杂的数据结构,为大型软件设计奠定基础。
本实验以某种线性表的创建与访问算法设计作为实验内容,举一反三,全面、深刻掌握线性结构的实现方法,培养解决问题的能力。
(二)实验内容1、编写生成线性表的函数,线性表的元素从键盘输入;2、编写在线性表中插入元素的函数;3、编写在线性表中删除元素的函数;4、编写输出线性表的函数;5、编写主函数,调用以上各函数,以便能观察出原线性表以及作了插入或删除后线性表的屏幕输出。
方案一采用顺序存储结构实现线性表。
方案二采用单链表结构实现线性表。
(三)实验要求1、掌握线性结构的机器内表示;2、掌握线性结构之上的算法设计与实现;3、列表对比分析两种数据结构的相应操作的时间复杂度、空间复杂度,阐明产生差异的原因。
实验二二叉树的创建与访问算法设计(4学时)(一)实验目的本实验以二叉树的创建与访问算法设计作为实验内容,掌握树型结构的实现方法,培养解决负责问题的能力。
(二)实验内容1、编写生成二叉树的函数,二叉树的元素从键盘输入;2、编写在二叉树中插入元素的函数;3、编写在二叉树中删除元素的函数;4、编写遍历并输出二叉树的函数。
方案一采用递归算法实现二叉树遍历算法。
方案二采用非递归算法实现二叉树遍历算法。
(三)实验要求1、掌握树型结构的机器内表示;2、掌握树型结构之上的算法设计与实现;3、列表对比分析两种数据结构的相应操作的时间复杂度、空间复杂度,阐明产生差异的原因。
实验三图的创建与访问算法设计(4学时)(一)实验目的本实验以图的创建与访问算法设计作为实验内容,掌握图型结构的实现方法,培养解决负责问题的能力。
数据结构与算法设计实验教学大纲(选修)
《数据结构与算法设计》课程实验教学大纲一、实验课程名称:数据结构(Data Structure)二、课程编号:三、课程类别:专业选修课四、实验课性质:非独立设课五、适用专业与学时学分:移动通信、光通信专业课程总学时:32;总学分:2;实验课学时:4六、实验教学目的和基本要求加深学生对教学内容的理解,验证所学的算法和数据结构,培养学生设计数据结构的能力和根据数据结构设计算法的能力。
通过对具体问题的分析、设计和实现,培养学生进行软件开发所需要的动手能力,为学好后续课程打下坚实的基础。
要求学生独立完成每个实验,教师检查实验现象和实验结果。
每完成一个实验,写一份实验报告。
七、主要仪器设备:计算机1台Turbo C软件八、实验课程内容及要求九、考核要求(1)实验报告:见附件“数据结构课程实验报告要求”(2)考核方式a、学生进行实验前由指导教师点名。
b、学生完成每次实验后须经指导教师验收同意后方可离开实验室。
c、指导教师对每份实验报告进行批改、评分,并将成绩登录在册。
有缺项者要求及时订正补齐,不符合实验要求的重做。
d、该课程所有实验结束后,指导教师根据学生的实验及报告给出实验考核成绩,按30%计入数据结构与算法设计课程成绩。
十、采用教材、参考书算法与数据结构陈媛等编著清华大学出版社数据结构(C语言)严蔚敏编著清华大学出版社数据结构(C语言描述) 徐孝凯等编著清华大学出版社算法与数据结构(C语言描述) 张乃孝等编著高等教育出版社算法设计与分析王晓东编著清华大学出版社数据结构课程实验报告要求实验题目班级姓名学号日期一、需求分析1.程序的功能;2.输入输出的要求;3.测试数据。
二、概要设计1.本程序所用的抽象数据类型的定义;2.主程序的流程及各程序模块之间的层次关系。
三、详细设计1.采用c语言定义相关的数据类型;2.写出各模块的伪码算法;3.画出函数的调用关系图。
四、调试分析1.调试中遇到的问题及对问题的解决方法;2.算法的时间复杂度和空间复杂度。
数据结构A-教学大纲
《数据结构》教学大纲课程编号:070114A课程类型:□通识教育必修课□通识教育选修课专业必修课□专业选修课□学科基础课总学时:64 讲课学时:48 实验(上机)学时:16学分:4适用对象:信息管理与信息系统专业(电子商务)、电子商务专业(商务智能)、信息管理与信息系统专业(量化投资)先修课程:高等数学、程序设计基础与应用一、教学目标程序的构成与数据结构是两个不可分割的问题。
为解决现实世界中的问题,必须先对问题进行分析,得到问题本身的逻辑关系,然后采用合理的数学模型进行表示,这需要对程序构造进行系统而科学的研究,因而数据结构是设计与实现编译程序,操作系统,数据库系统,多媒体信息处理,数字图象处理及其它系统程序和大型应用程序的重要基础,是介于数学,计算机硬件,软件之间的一门核心课程,是信息管理与管理信息系统专业一门重要的专业技术基础课程。
本课程的目的在于向学生介绍计算机是如何处理, 组织和操作数据,如何评价算法的效率,使学生能够利用所学的理论知识解决实际问题,培养学生分析问题、解决问题的能力。
通过本课程的学习,使学生深透地理解数据结构的逻辑结构和物理结构的基本概念以及有关算法,培养基本的、良好的程序设计技能,编制高效可靠的程序,为学习操作系统、编译原理和数据库等课程奠定基础。
二、教学内容及其与毕业要求的对应关系(一)教学内容本课程的主要内容包括数据的逻辑结构和存储结构及在两者之上设计的算法。
数据的逻辑结构主要包括线性结构、层次结构和图结构;存储结构包括顺序存储和链式存储。
具体内容可分为5部分:1)线性结构数据的存储和运算,栈与队列的特点与应用、数组的存储与效率;2)树状结构的存储与运算,二叉树的性质、存储与操作实现,哈夫曼树与哈夫曼编码;3)图状结构的存储于运算,图的应用与相关算法的设计、实现;4)静态查找与动态查找的相关算法;5)各种排序算法及其效率比较分析。
(二)教学方法和手段根据教学目标,拟采用的教学方法有:课堂讲解基本概念和核心知识,讲授和讨论相结合领会知识要点,案例教学训练解决问题的能力,最后在visualC平台下进行上机操作和具体实践。
《数据结构课程设计》实验大纲[1]
《数据结构课程设计》课程实验大纲一、课程名称:数据结构课程设计二、课程性质:其他实践教学环节三、实验学时:36学时四、课程类型:独立设课五、课程适用专业:计算机科学技术专业、计算机科学与技术专业(实验班)、软件工程专业六、教学目的:了解并掌握数据结构与算法的设计方法,具备初步的独立分析和设计能力;初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;提高综合运用所学的理论知识和方法独立分析和解决问题的能力;训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所应具备的科学的工作方法和作风。
七、实验教学项目表八、选题要求:在上面实验项目1、2、5中选一个小题做,在实验项目3、4中选择一个小题做,即一共需要完成两个小题。
九、课程设计报告要求:每个实验应该有相应的课程设计报告,包含如下内容:(1)问题描述及分析(2)功能模块及数据结构描述(3)主要算法流程描述(4)使用说明如何运行,如何输入测试数据,会出现的输出结果等,给出实例。
(5)实验及总结调试过程中遇到的主要问题有哪些?如何解决的。
有何结论?课程设计报告的格式要求1.字体设置要求为:(1)标题:黑体小四(2)正文内容:宋体小四号(3)表题与图题宋体五号(4)参考文献:宋体五号2.表格每个表格应有表序和表题,表序和表题应写在表格上方正中,表序后空一格书写表题。
3.插图插图必须精心制作,线条粗细要合适,图面要整洁美观。
每幅插图应有图序和图题,图序和图题应放在图位下方居中处。
4.各类参考文献的书写格式如下:连续出版物:[序号]作者.书名.刊名,年,卷号(期号):起~止页码专(译)著:[序号]作者.书名.(译者).出版地:出版者,出版年.起~止页码论文集:[序号]作者.文章名.文集名.会议地点,年.起~止页码学位论文:[序号]姓名.学位论文题目:[XX学位论文],授予单位所在地:授予单位,授予年十、课程设计成绩评定:准确评定成绩是课程设计的重点。
“数据结构与算法A实验班”教学大纲
“数据结构与算法A (实验班)”教学大纲“数据结构与算法”是一门重要的计算机类基础课程。
其主要目的是使学生较全面地理解数据结构的概念、掌握各种数据结构与算法的实现方式,比较不同数据结构和算法的特点。
通过学习,使学生能够提高用计算机解决实际问题的能力。
本课程注重数据结构与算法理论和实践的结合,从问题求解的角度指导学生学习如何运用数据结构与算法知识来应用和解决实际问题,为将来利用从事计算机相关的学习、研究和开发工作打下扎实的基础。
本课程是“数据结构与算法A ”的替代课程,专门为那些基础比较好、学习能力突出、学有余力的学生设置。
课程将加大数据结构与算法的深度和广度,提供更多的研究和讨论机会,因材施教、培养领袖人才。
作为计算机和智能专业二年级的主干基础课,参与此课程学习的学生需要有非常好的计算概论A 、程序设计实习。
可以不要求集合论图论、计算概论的先修基础。
以课堂讲授为主,同时借助网络教学平台,拓展课堂讲授的相关知识,便于同学自次以上的独立习题课(6小时),针对学生作鉴于数据结构与算法是与实践紧密结合的课程,配合理论教学,将加强上机实习的训练,通过合理、有效地设计上机题目,改进作业评核方式,调动学生的积极性,启发增强学生综合运用有关知识的能力。
数据结构与算法实习概率统计A数据结构与算法A(实验班)数学分析/高等数学集合论与图论算法分析与设计程序设计实习高等代数/线性代数计算概论A程序设计语言原理2.教学目的和要求1)掌握并巩固基础数据结构知识:线性表、树、图等常用的数据结构和算法的设计分析技术;常用的排序、检索算法及其时间空间开销;对算法复杂性进行必要分析和控制。
2)理解编译栈的工作原理,熟习用栈消除递归的算法框架,并解决相关应用问题。
3)初步掌握稀疏矩阵、广义表等高级线性结构技术,了解Trie结构、AVL树等高级树形结构。
4)对抽象数据类型有深入的理解,能根据所求解问题的性质选择合理的数据结构,设计并完成处理海量数据的复杂应用系统。
《数据结构》课程实验大纲
《数据结构》课程课内上机大纲课内上机学时:2 课程总学时:64适用专业:计算机科学与技术(考试)实验项目数:1、软件工程(考试)、教育技术学(考试)、网络工程(考试)、通信工程(考试)开课教研室:计算机工程大纲执笔人:朱战立一、本课内上机课的基本理论和目的数据结构是计算机学科的核心专业基础课程,是计算机程序设计的重要理论和实践基础。
本课程讨论了软件设计中经常遇到的线性表、堆栈、队列、串、数组、二叉树、图等典型数据结构的设计方法以及各种典型排序和查找算法的性能和设计方法,并介绍了各种典型数据结构的应用。
数据结构课程是一门理论和实践相结合的课程。
课内上机是为训练学生的实际程序设计能力安排的、包含在教学课时内的教学内容。
课内上机目的是:(1)进一步深入理解相关部分的基本概念和授课内容。
(2)进一步提高实际动手进行程序设计的能力。
二、本课内上机课的基本要求(1)认真阅读掌握和课内上机相关的教材内容。
(2)自己编程,可以参考别人的程序设计方法,但不得抄袭别人的程序。
(3)程序有错误时,尽量先自己调试,在自己能力达不到时,可请教同学或询问老师。
(4)及时完成课内上机报告。
三、设置的课内上机项目、课内上机内容和学时分配实验一顺序表的基本操作和简单程序(2学时)课内上机内容如下:(1)阅读教材上顺序表的算法代码,并自己键入这些代码。
(2)设计一个使用顺序表的应用程序。
(3)分析应用程序的运行情况。
四、本课内上机课的考核方法与评分方法本课内上机不是单独开课,是附属于数据结构课程的课内上机,因此,不单独考试。
其成绩和数据结构课程考试结合起来综合评分。
审定人:批准人:。
《数据结构》实验大纲
《数据结构》课程实验教学大纲一、实验课名称:中文名:数据结构英文名:Data Structure二、实验课性质:非独立设课三、适用专业:计算机科学与技术、网络工程、信息工程、软件工程、信息管理与系统四、采用教材及参考书:[1] 严蔚敏,吴伟民著.《数据结构(C语言版)》(第二版). 北京:清华大学出版社,2007[2] 苏仕华, 数据结构课程设计, 北京:机械工业出版社,2005.5[3] 李春葆,数据结构教程上机实验指导,北京:清华大学出版社,2005.7五、学时学分:课程总学时:54+18 ;课程总学分: 3.5 ;实验课总学时:0.5;六、实验项目名称和学时分配七、实验教学的目的和要求通过上机实践,使学生总体上掌握常用数据结构的基本概念及其不同的实现方法,理解在不同存储结构上实现不同的运算方式的意义,体会其中的编程技巧和规律。
通过本次实验课程,有助于学生熟练使用C、C++和Visual C++语言上机环境、提高高级语言编写、调试程序的能力,养成良好的程序设计风格,编写规范的文档报告,为后续的编译原理、软件工程、数据库原理等课程奠定基础。
八、实验项目的内容和要求1 实验一(1)实验项目名称:线性表的基本操作(2)实验内容:a.输入一组整型元素序列,建立线性表。
b.实现该线性表的遍历。
c.在该线性表中查找某一元素,查找成功显示查找元素,否则显示查找失败。
d.在该线性表中删除或插入指定元素。
(3)实验要求:了解线性表的基本概念,掌握线性表的两种存储结构——顺序存储和链式存储,掌握在两种存储结构上实现线性表的基本操作,掌握用C或C++或Visual C++上机调试线性表操作的基本方法。
(4)应配备的主要设备名称和台件数2 实验二(1)实验项目名称:队列的应用——舞伴配对问题(2)实验内容:利用循环队列模拟舞伴配对问题:在舞会上,男、女各自排成一队。
舞会开始时。
依次从男队和女队的队头各出一人配成舞伴。
数据结构A实验教学大纲
数据结构A实验教学大纲适用范围:2018版本科人才培养方案课程代码:08130291课程性质:学科基础必修课课程名称:数据结构A总学时/实验学时:72/16学分:4.5学分先修课程:C语言程序设计适用专业:物联网工程、软件工程等专业教材:《数据结构》(C语言版|第2版),严蔚敏、李冬梅、吴伟民编著,人民邮电出版社,2015.02开课单位:计算机科学与技术系一、课程性质、目的和任务本课程是物联网工程、软件工程等专业的学科基础必修课,是介于数学、计算机硬件和计算机软件之间的一门计算机科学中的核心课程。
本课程主要使学生体会“算法的设计建立于逻辑结构,算法的实现依赖于物理(存储)结构”,并能根据实际情况选择相应的数据结构和算法,所以本课程教学强调思维训练,为随后的程序设计和技能训练打好基础。
二、实验教学基本要求数据结构A实验包括单链表、栈、队列、串、二叉树、图、查找、排序共8个实验。
通过这些实验,使学生验证并应用理论课所学内容,掌握数据结构的基本知识和算法,为以后更好的设计程序打下基础。
此外,安全用电是实验中始终需要注意的重要事项。
为了做好实验,并且确保人身和设备的安全,在整个实验过程中,必须要求学生严格遵守实验室安全用电规则。
三、实验项目与内容大纲基本内容包括4个必做的实验,在规定的16个学时内完成。
四、考核方式实验成绩主要由实验实际操作和实验报告撰写这两项成绩组成,其比例为实际操作和报告撰写各占50%,两项成绩综合后形成总成绩,总成绩在实验报告中给出。
五、推荐教材和教学参考书实验教材:《数据结构习题解析与实验指导》,李冬梅、张琪编著,北京:人民邮电出版社,2017.8。
参考书:1.《数据结构(C语言版) 》,Ellis Horowitz Sartaj Sahni Susan Anderson-Freed 著,李建中、张岩、李治军译,北京:机械工业出版社,2012.32. 《数据结构与算法分析——C语言描述》,Mark Allen Weiss著,冯舜玺译,机械工业出版社,2012.11六、说明每位学生必须按规定完成实验课,因故不能参加实验者,应课前向指导教师请假(必须经有关领导批准),对所缺实验要在期末课程考试时间之前补齐。
《数据结构与算法》实验教学大纲
《数据结构》实验课程教学大纲一、课程名称:《数据结构》实验二、课程性质:学科与专业必修课三、实验学时:12学时四、课程类型:非独立设课五、课程适用专业:软件工程专业六、教学目的:《数据结构》是软件工程专业的一门重要的专业基础课,课程旨在使学生学会计算机加工的数据对象的特性,学会数据的组织方法,以便选择合适的数据的逻辑结构及存储结构,并进行相应的运算。
实验是该课程实践教学的重要环节,目的是培养学生根据求解问题的性质选择合理的数据结构,提高分析、设计、编程以及控制求解算法的时间、空间复杂性的能力。
七、实验教学项目表1项目顺序存储的线性表时数 2 性质验证内容要求内容:1、设线性表存放在向量A[arrsize]的前elenum个分量中,且递增有序。
试设计一算法,将x插入到线性表的适当位置上,以保持线性表的有序性。
2、用向量作存储结构,试设计一个算法,仅用一个辅助结点,实现将线性表中的结点循环右移k位的运算。
3、用向量作存储结构,试设计一个算法,仅用一个辅助结点,实现将线性表逆置的运算。
要求:了解线性表的逻辑结构特征,熟练掌握线性表的顺序存储结构的描述方法,及在其上实现各种基本运算的方法。
2项目单链表上的操作时数 2 性质验证内容要求内容:1、已知带头结点的动态单链表L中的结点是按整数值递增排序的,试写一算法将值为x的结点插入到表L中,使L仍然有序。
2、设计一算法,逆置带头结点的动态链表L。
要求利用原表的结点空间,并要求用尽可能少的时间完成。
3、假设有两个按元素值递增有序的线性表A和B,均以单链表作存储结构,试编写算法将A表和B表归并成一个按元素值递减有序的线性表八、实验报告要求:实验报告内容应该主要包括如下内容:(1)实验题目(2)实验内容(3)实验目的(4)实验环境(5)主要算法与数据结构(6)实验结果(7)实验总结九、实验成绩评定:(1)本实验总计12分,每个实验2分,每个实验需在规定时间内完成。
数据结构A教学大纲
数据结构A教学大纲一、课程概述数据结构 A 是计算机科学与技术专业的一门重要的专业基础课程。
它主要研究非数值计算程序设计问题中所出现的计算机操作对象以及它们之间的关系和操作。
通过本课程的学习,学生将掌握常见数据结构的逻辑结构、存储结构和相关算法,能够运用所学知识解决实际问题,为后续课程的学习和软件开发打下坚实的基础。
二、课程目标1、知识目标理解并掌握常见的数据结构(如线性表、栈、队列、树、图等)的逻辑结构和存储结构。
熟悉各种数据结构的基本操作算法,并能够分析其时间复杂度和空间复杂度。
了解不同数据结构在解决实际问题中的应用场景和优缺点。
2、能力目标能够运用所学的数据结构知识,设计和实现简单的算法解决实际问题。
培养学生的程序设计能力和逻辑思维能力,提高代码的可读性和可维护性。
具备独立思考和创新能力,能够在实际应用中灵活选择和运用合适的数据结构。
3、素质目标培养学生的团队合作精神和沟通能力,能够在项目开发中与他人协作完成任务。
培养学生的学习兴趣和自主学习能力,使学生能够不断更新知识,适应技术的发展。
三、课程内容1、线性表线性表的定义、逻辑结构和基本操作。
顺序表的实现及其基本操作算法。
链表的实现(单链表、双向链表、循环链表)及其基本操作算法。
线性表的应用,如多项式的表示和运算。
2、栈和队列栈的定义、逻辑结构和基本操作。
栈的顺序存储和链式存储实现及其基本操作算法。
队列的定义、逻辑结构和基本操作。
队列的顺序存储(循环队列)和链式存储实现及其基本操作算法。
栈和队列的应用,如表达式求值、迷宫求解等。
3、串串的定义、存储结构和基本操作。
串的模式匹配算法(BF 算法、KMP 算法)。
4、数组和广义表数组的定义、存储结构和基本操作。
特殊矩阵(对称矩阵、三角矩阵、稀疏矩阵)的压缩存储。
广义表的定义、存储结构和基本操作。
5、树和二叉树树的定义、逻辑结构和基本概念。
二叉树的定义、性质和存储结构。
二叉树的遍历算法(前序遍历、中序遍历、后序遍历、层次遍历)。
《数据结构》实验教学大纲
《数据结构》实验教学大纲(Data Structure)课程代码:0610009实验学时:25学时先修课程:《C语言程序设计》、《离散数学》一、目的要求目的:通过实验,可使学生深刻理解各种逻辑结构、存储结构的特性,培养通过实际问题分析其数据对象、基本操作,选择逻辑结构、存储结构灵活应用基本算法,并设计出具有专业水准的应用程序的能力。
要求:熟悉VC++的编程和调试环境,根据实验内容和要求,认真完成程序编写、上机调试、运行结果分析,书写实验报告。
二、实验项目内容及学时分配实验一、单链表的建立、删除和插入(2学时)1. 实验目的要求熟悉C语言的上机环境,进一步掌握C语言的结构特点。
掌握线性表的链式存储结构——单链表的定义及C语言实现。
2. 实验主要内容实现线性表在链式存储结构——单链表中的各种基本操作。
3. 实验类别:专业基础4. 实验类型:验证5. 实验要求:必做6. 主要仪器:微型计算机或相应的设备实验二、栈的建立、插入和删除(2学时)1. 实验目的要求掌握栈的顺序表示和结构特点,描述方法及有关概念。
2. 实验主要内容实现顺序栈的建立、插入、删除的操作算法。
3. 实验类别:专业基础4. 实验类型:验证5. 实验要求:必做6. 主要仪器:微型计算机或相应的设备实验三、队列的建立、插入和删除(2学时)1. 实验目的要求掌握队列的表示和结构特点,描述方法及有关概念。
2. 实验主要内容实现队列的建立、插入、删除的操作算法。
3. 实验类别:专业基础4. 实验类型:验证5. 实验要求:必做6. 主要仪器:微型计算机或相应的设备实验四、模式串的匹配(3学时)1. 实验目的要求掌握串的结构特点和各种基本操作。
2. 实验主要内容实现串的模式匹配算法。
3. 实验类别:专业基础4. 实验类型:验证5. 实验要求:必做6. 主要仪器:微型计算机或相应的设备实验五、稀疏矩阵的转置(2学时)1. 实验目的要求掌握稀疏矩阵的结构特点,描述方法及有关概念。
《数据结构课程实验》大纲
《数据结构课程实验》大纲一、《数据结构课程实验》的地位与作用“数据结构”是计算机专业一门重要的专业技术基础课程,是计算机专业的一门核心的关键性课程。
本课程较系统地介绍了软件设计中常用的数据结构以及相应的存储结构和实现算法,介绍了常用的多种查找和排序技术,并做了性能分析和比较,内容非常丰富。
本课程的学习将为后续课程的学习以及软件设计水平的提高打下良好的基础。
由于以下原因,使得掌握这门课程具有较大的难度:(1)内容丰富,学习量大,给学习带来困难;(2)贯穿全书的动态链表存储结构和递归技术是学习中的重点也是难点;(3)所用到的技术多,而在此之前的各门课程中所介绍的专业性知识又不多,因而加大了学习难度;(4)隐含在各部分的技术和方法丰富,也是学习的重点和难点。
根据《数据结构课程》课程本身的技术特性,设置《数据结构课程实验》实践环节十分重要。
通过实验实践内容的训练,突出构造性思维训练的特征, 目的是提高学生组织数据及编写大型程序的能力。
实验学时为10。
二、《数据结构课程实验》的目的和要求不少学生在解答习题尤其是算法设计题时,觉得无从下手,做起来特别费劲。
实验中的内容和教科书的内容是密切相关的,解决题目要求所需的各种技术大多可从教科书中找到,只不过其出现的形式呈多样化,因此需要仔细体会,在反复实践的过程中才能掌握。
为了帮助学生更好地学习本课程,理解和掌握算法设计所需的技术,为整个专业学习打好基础,要求运用所学知识,上机解决一些典型问题,通过分析、设计、编码、调试等各环节的训练,使学生深刻理解、牢固掌握所用到的一些技术。
数据结构中稍微复杂一些的算法设计中可能同时要用到多种技术和方法,如算法设计的构思方法,动态链表,算法的编码,递归技术,与特定问题相关的技术等,要求重点掌握线性链表、二叉树和树、图结构、数组结构相关算法的设计。
在掌握基本算法的基础上,掌握分析、解决实际问题的能力。
三、《数据结构课程实验》内容课程实验共10学时,要求完成以下五个题目:实习一约瑟夫环问题(2学时)用循环链表实现约瑟夫环问题,熟悉链表结构的使用。
《数据结构A》教学大纲
《数据结构A》教学大纲一、课程基本信息1.课程代码:219159002.课程中文名称:数据结构A课程英文名称:Data Structure A3.面向对象:地理信息科学,软件工程,信息工程及遥感科学与技术专业本科生4.开课学院(课部)、系(中心、室):5.总学时数:64讲课学时数:48,实验学时数:166.学分数:47.授课语种:中文,考试语种:中文8.教材:殷人昆,数据结构(用面向对象方法与C++描述)(第2版),清华大学出版社二、课程内容简介该课程主要介绍基本数据结构、基本算法分析技术、排序、检索和索引技术。
对常用的基本数据结构,讨论相应的存储实现技术和经典算法,并通过算法时间空间的效率分析,介绍时空权衡的原则。
对常用的各种经典排序算法深入讨论其时间和空间开销。
通过本课程的学习,学生将基本掌握数据结构和算法的设计分析技术,提高程序设计的质量;根据所求解问题的性质选择合理的数据结构并对时间空间复杂性进行必要的控制。
三、课程的地位、作用和教学目标作为一门重要的专业必修课程,“数据结构”课程既是对以往课程的深入和扩展,也是为将来更加深入地学习其他专业课程打下基础。
课程中所学习的排序问题的算法,以及基本的树、图等数据结构,是计算机科学的基本功。
B+树、Hash等高级数据结构,也是数据库、操作系统、编译原理、计算机网络等后续课程的基础。
课程的教学目标为:通过课程学习,要求学生掌握以下几个方面:1、从数据结构的逻辑结构、存储结构和数据的操作三个方面掌握线性表、树和二叉树、图等常用的数据结构;2、掌握在各种常用数据结构上实现的查找和排序等算法;3、对算法的时间和空间复杂性有一定的分析能力;4、针对简单的应用问题,能够选择合适的数据结构设计有效的算法。
四、与本课程相联系的其他课程计算机高级语言程序设计,面向对象程序设计,计算机结构与组成,离散数学。
五、教学基本要求第一章数据结构概述2学时1.1 数据结构的概念;1.2 数据结构的抽象形式;1.3 作为ADT的C++类;1.4 算法定义;1.5 算法性能分析与度量。
数据结构实验指导书(09级)
数据结构实验指导书(09级)数据结构作业和实验指导书数据结构课程组工业大学计算机学院2021年3月Word 资料目录第1章概述1.1 课程、教材和实验1.2 作业和实验安排第2章算法设计实验和上机2.1 数据结构习题概述2.2 算法设计的上机作业要求2.3 算法设计上机作业第3章抽象数据类型的实现3.1 实验概要3.2 实验目的3.3 预习与参考3.4 实验要求和设计指标3.5 实验仪器设备和材料3.6 调试及结果测试3.7 考核形式3.8 实验报告要求3.9 思考题3.10 示例第4章课程设计4.1 课程设计概述Word 资料4.2 课程设计时间和容4.3 课程设计步骤4.4 课程设计报告例4.5 课程设计考核形式和评分标准Word 资料第1章概述1.1 课程、教材和实验数据结构是计算机科学的算法理论基础和软件设计的技术基础,主要研究信息的逻辑结构及其基本操作在计算机中的表示和实现。
数据结构不仅是计算机专业的核心课程,而且已成为其他理工专业的热门选修课。
课程的教学要求之一是训练学生进行复杂程序设计的技能和培养良好程序设计的习惯, 其重要程度决不亚于知识传授。
因此,在数据结构的整个教学过程中, 完成习题作业和上机实习是两个至关重要的环节。
习题的作用在于帮助学生深入理解教材容, 巩固基本概念, 达到培养良好程序设计能力和习惯的目的。
从认知的程度划分,数据结构的习题通常可分为三类:基础知识题、算法设计题和综合实习题。
基础知识题主要是检查对概念知识的识记和理解,一般可作为学生自测题。
算法设计题的目的是练习对原理法的简单应用,多数是要求在某种数据存储结构上实现某一操作,是数据结构的基础训练,构成了课外作业的主体。
综合实习题则训练对知识的综合应用和软件开发能力,主要是针对具体应用问题,选择、设计、和实现抽象数据类型(ADT)的可重用模块,并以此为基础开发满足问题要求的小型应用软件,应将其看作软件工程的综合性基础训练的重要一环,给予足够的重视。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《数据结构A》课程实验大纲
课程编号:B0300051S课程名称:数据结构A
课内总学时:56 上机实验学时:8×2
一、实验课程的性质、目的和任务
性质:《数据结构A》是计算机科学与技术以及相关专业的专业基础课。
本实验是《数据结构A》课程的课内上机实验教学环节。
目的和任务:数据结构知识是计算机程序设计的重要理论和实践基础。
课程教学包括理论和上机实验两部分。
通过上机实验,加深对计算机科学中的组织、表示和处理数据的基本方法的理解,训练学生运用数据结构和算法知识解决应用问题的实际能力。
三、考核及实验报告
(一) 考核
本课程实验非独立设课,考核方式以学生上机操作和完成设计作业相结合。
实验成绩的评定:实验到课率(10%);实验完成(70%);实验效果(20%)。
实验成绩占课程总成绩的15%。
(二)实验报告
实验报告内容:实验题目;实验内容(问题陈述、系统分析和概要设计、详细设计、核心算法和算法分析、测试用例和运行结果);实验小结(总结本次实验,包括对测试结果的分析,测试和调试过程所遇问题的回顾与分析。
软件设计与实现的经验和体会,进一步改进的设想。
)。
实验报告以电子版形式递交。
实验报告要书写规范、文字简练、语句通顺、图表清晰。
四、主要仪器设备
(1)PC机
(2)Windows98/2000/XP操作系统,Visual C++
五、教材及参考书
教材:
[1] 陈慧南,数据结构——使用C++描述,人民邮电出版社,2006
参考书:
[1] Sahni Sahni等著,汪诗林等译,数据结构、算法与应用---C++语言描述. 机
械工业出版社,1999
[2] Preiss B R著,胡广斌等译,数据结构与算法, 电子工业出版社,2000
[3] 殷人昆,陶永雷等著,数据结构(用面向对象方法与C++描述)清华大学出版
社,1999
[4] 陈慧南. 数据结构与算法. 北京:高等教育出版社,2005
[5] 严蔚敏,吴伟民,数据结构(C语言版)清华大学出版社,1997.
六、说明。