下载此文档

“数据结构与算法”课程学习总结报告.docx


文档分类:IT计算机 | 页数:约12页 举报非法文档有奖
1/12
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/12 下载此文档
文档列表 文档介绍
该【“数据结构与算法”课程学习总结报告 】是由【老狐狸】上传分享,文档一共【12】页,该文档可以免费在线阅读,需要了解更多关于【“数据结构与算法”课程学习总结报告 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。“数据结构与算法”课程学****总结报告
“数据构造与算法”课程学****总结报告
数据构造课程总结
孙博1**********计本3班
如何合理的组织数据、高效的处理数据是扩大计算机应用领域、提高软件效率的关键。
而在软件开发过程中人们会要求软件工程师们使程序有更高的运行效率。因此要成为一名合格的软件编程员,必需具备数据构造领域和算法设计领域的特地学问。
本学期我们在李红教师的带着下学****了《数据构造构造与算法》一书。这本书安排非常合理,在第一章对全书进展导引和学****的根底学问、预备学问。在26章中使规律构造为“线性”的数据构造及其应用学问内容。在7、8章中使规律构造中的为“树形”的数据构造及应哟就能够只是内容。在第九章中使规律构造为“集合性”的数据元素在三列存储下的数据构造及其应用学问内容。在第十章使规律构造为“图形”的数据数据构造及其应用学问内容。下面将对各章的内容惊醒总结:
第一章:首先介绍了数据的相关学问,叙述了数据的概、构成等,数据的最小组成单位。然后叙述了数据类型与数据构造。数据类型包括概念及定义,数据类型包括简洁数据类型和简单数据。简洁数据类型有:整数,实属,字符,指针,枚举量等。而简单数据类型包括:数组,构造图,共用体。而数据构造主要使争论元素之间的关系,数据构造包括三方面内容,及规律构造,存储构造以及一组运算集合。数据的规律构造有四种根本构造:集合性构造,线性构造,树形构造,图形构造。数据的存储构造是指数据严厉在存储器中的存储方式包括挨次存储,链表存储,索引存储,散列存储。然后介绍以前学****的C语言(及本教材的使用的算法描述工具)学问锦兴路回忆包括指针、构造比阿亮、函数、递归、动态存储安排、文件操作等内容。
其次章:挨次表及其应用主要介绍的是线性规律构造的呼声几乎在挨次存储方法下的数据构造挨次标的概念、数据类型、数据构造、根本运算及相关应用问题。应用一:查找介绍了两种方法:简洁挨次查找(从书序标的一端来时扫描,将待查找元素与数据节点中的个元素比拟。若相等,则查找胜利,否则失败)和二分查找(将表中间的记录的关键字与给定的值比拟,若相等,则胜利。否则,将挨次表风味左右两个字表,然后在子表中进一步查找。)
应用二:排序问题介绍了交换排序,选择排序,插入排序,归并排序。
1、插入排序
包括直接插入排序(将挨次表分为左右两个子表,左子表为有序表,右子表为无序表,将右子表中的元素插入左子表中)和希尔排序法(将整个待排序的元素序列分割成若干子序列,对每个子序列分别进展直接插入排序,当整个带排序元素序列“根本有序时”,在进展直接插入排序)2、交换排序
a)冒泡排序:两辆比拟待排序元素的关键字,发觉相反时即进展交换,知道没有
逆序的元素为止。b)快速排序算法:在待排序的元素中选定一个“中间数”,将其他数据元素与该
数比拟,将比其小的数据放道左子表中,比起大的放入右子表中。
3、选择排序a)直接选择排序:将数据进展多谈排序,每趟选出其中的最大数或最小数放在最终位置上,每趟中已排好的数不再参与下一轮的排序。b)堆排序:输出堆顶元素将剩余元素按关键字大小重诚信排列成一个堆重复
上述2个步骤
4、归并排序
将两个或两个以上的有序表合并成一个新的有序表。应用三:字符处理问题
介绍了串和挨次串的定义及相关概念,还有挨次串的根本算法。
第三章:介绍链表。链表中数据元素的存储不肯定是连续的,还可以占用任意的、不连续的物理存储区域。与挨次表相比,链表的插入、删除不需要移动元素,给算法的效率带来较大的提高,且在存储空间上有动态申请的优点。这一章中介绍了链表的节点构造、静态与动态链表的概念、链表的根本运算(如求表长、插入、查找、删除等)、单链表的建立(头插法和尾插法)以及双向循环链表的定义、构造、功能和根本算法。弄清其个运算的算法思想及其时间简单度和空间性能。最终介绍了链表之中存储构造在实际中的相关应用。
a)单循环链表是一种首尾相接的单链表,终端结点的指针域指向开头结点或头结点。链表终止条件是以指针等于头指针或尾指针。采纳单循环链表在有用中多采纳尾指针表示单循环链表。优点是查找头指针和尾指针的时间都是O(n),不用遍历整个链表。
b)双链表就是双向链表,就是在单链表的每个结点里再增加一个指向其直接前趋的指针域prior,形成两条不同方向的链。由头指针head惟一确定。双链表也可以头尾相构成双循环链表。双链表上的插入和删除时间简单度均为O(1)。
挨次表和链表的比拟
a)根本空间的考虑存储密度是指节点数据本身所占的存储量除以结点构所占的存储总
量所得的值。值越大存储空间利用率越高。
挨次表是静态安排的,存储密度为1,链表是动态安排的,存储密度小于1。b)挨次表适用于静态查找,要进展删除和插入操作时,需移动大量结点。链表适用于做动态的插入和删除。第四章:堆栈是运算受限制的线性构造。其根本运算方法与挨次表和链表运算方法根本一样,不同的是堆栈须遵循“先进后出”的规章,对堆栈的操作只能在栈顶进展;堆栈在文字处理,匹配问题和算术表达式的求值问题方面的应用。
a)栈的根本运算有六种:构造空栈:InitStack,判栈空:StackEmpty,判栈满:
StackFull,进栈:Push,退栈:Pop,取栈顶元素:StackTopb)在挨次栈中有“上溢”和“下溢”的现象。“上溢”是栈顶指针指出栈的外面是出错状态。“下溢”可以表示栈为空栈,因此用来作为掌握转移的条件。
c)挨次栈中的根本操作有六种:构造空栈,判栈空,判栈满,进栈,退栈,取栈顶元
素d)链栈则没有上溢的限制,因此进栈不要判栈满。链栈不需要在头部附加头结点,只
要有链表的头指针就可以了。e)链栈中的根本操作有五种:构造空栈,判栈空,进栈,退栈,取栈顶元素
第五章:队列及其应用,我们知道队列是一种特别的线性表,是一种具有线性规律构造的数据元素的集合。而队列的运算遵循“先进后出”的原则,因此,队列也是一个运算受限制的线性表。a)队列的根本运算有六种:置空队:InitQueue,判队空:QueueEmpty,判队满:QueueFull,入队:EnQueue,出队:DeQueue,取队头元素:QueueFront
b)挨次队列的“假上溢”现象:由于头尾指针不断前移,超出向量空间。这时整个向
量空间及队列是空的却产生了“上溢”现象。为了克制“假上溢”现象引入循环向量的概念,是把向量空间形成一个头尾相接的环形,这时队列称循环队列。c)判定循环队列是空还是满,方法有2种:一种是另设一个标志变量来推断;其次种
是少用一个元素空间,入队时先测试(q->rear%m=q->front?)满:空。d)队列的链式存储构造称为链队列,一个链队列就是一个操作受限的单链表。为了便
于在表尾进展插入的操作,在表尾增加一个尾指针,一个链队列就由一个头指针和
一个尾指针唯一地确定。链队列不存在队满和上溢的问题。在链队列的出队算法中,要留意当原队中只有一个结点时,出队后要同进修改头尾指针并使队列变空。
第六章:介绍了特别矩阵和广义表的概念与应用。其中,特别矩阵包括对称矩阵、三角矩阵、对角矩阵和稀疏矩阵,书中分别具体介绍了它们的存储构造。其中三元组和十字链表这两种
构造尤为重要;对着两种构造的建立了应用要把握。稀疏矩阵的应用包括转置和加法运算等。最终介绍了广义表的相关概念及存储构造,关于它的应用,课本中举了m元多项式的表示问题。
第七章:二叉树的学问是重点内容。在介绍有关概念时,提到了二叉树的性质以及两种特别的二叉树:完全二叉树和满二叉树。接着介绍二叉树的挨次存储和链接存储以及生成算法。重点介绍二叉树的遍历算法(递归算法、先序、中序和后序遍历非递归算法)和线索二叉树。二叉树的应用:根本算法、哈夫曼树、二叉排序树和堆排序,其中关于二叉排序树和哈弗曼书的构建是重点。
a)两种特别的二叉树:完全二叉树(非叶子节点均有两个孩子节点并且对于仍一层某
一节点有孩子节点,该层全部节点均有孩子节点)和满二叉树(在完全二叉树上的根底上最下层从左到右删除若干个节点。)
b)二叉树的5个重要性质
c)依据结点的次序不同可得三种遍历:先序遍历,中序遍历、后序遍历。
d)二叉树的应用:根本算法、哈弗曼树、二叉排序树和堆排序
第八章:介绍了树和森林。树与二叉树是不同的概念。教材介绍了树和森林的概念、遍历和存储构造,还有树、森林和二叉树的相互关系,树或森林怎样转化成二叉树,二叉树又如何转换为树和森林等算法。
第九章:散列构造是一种查找效率很高的一种数据构造。本章的主要学问点有:散列构造的概念及其存储构造、散列函数、两种冲突处理方法、线性探测散列和链地址散列的根本算法以及散列构造的查找性能分析。
第十章:介绍了图的概念及其应用,是本书的难点。图的存储构造的学问点有:邻接矩阵、邻接表、逆邻接表、十字链表和邻接多重表。图的遍历包括图的深度优先搜寻遍历和广度优先搜寻遍历。其余学问点有:有向图、连通图、生成树和森林、最短路径问题和有向无环图及其应用。有向无环图重点理解AOV网和拓扑排序及其算法。
心得体会以及建议:通过学****数据构造与算法》我们可以设计出更好的算法,高效地组织数据。一个程序无论采纳何种语言,其根本算法思想不会转变。“软件开发好比写作文,计算机语言供应了很多华美的辞藻,而数据构造则考虑如何将这些辞藻组织成一篇优秀的文章来。”在学****这门课中,要熟识对算法思想的一些描述手段,包括文字描述、图形描述和计算机语言描述等。因此,计算机语言根底是必需的,由于它供应了一种重要的算法思想描述手段机器可识别的描述。
这门课完毕之后,我总结了学****中遇到的一些问题,最为突出的,书本上的学问与教师的讲解都比拟简单理解,但是当自己采纳刚学的学问点编写程序时却感到非常麻烦,有时表现在想不到适合题意的算法,有时表现在算法想出来后,只能将书本上原有的程序段抄写到自己的程序中再加以必要的连接以完成程序的编写。针对这一状况,我会严格要求自己,娴熟把握算法思想,尽量独立完成程序的编写与修改工作,只有这样,才能够提高运用学问,解决问题的力量。
教学的建议
1、建议在上课过程中加大随堂练****的重量,以便学生能当堂消化课堂上学****的学问,也便于准时了解学生对学问点的把握状况,同时有助于学生保持良好的精神状态。2、建议在课时允许的状况下,增加****题课的重量,通过课堂的****题讲解,加深对学问点的把握,同时对各学问点的运用有一个更为直观和详细的熟悉。
以上便是我对《数据构造与算法》这门课的学****总结,我会抓紧时间将没有吃透的学问点补齐。今后我仍旧会连续学****克制学****中遇到的难关,在打牢根底的前提下向更深入的层面迈进!
扩展阅读:数据构造与算法课程学****总结报告
数据构造与算法课程学****总结报告
计科系10级计本
一、数据构造与算法学问点
《数据构造与算法》这本书共有十一个章节。从第一章的数据构造和算法的引入,介绍了数据和数据类型、数据构造、算法描述工具、算法和算法评价四个方面的学问。其次章则介绍了挨次表及其应用的相关学问。从挨次表的根本概念开头,分别介绍了挨次表根本算法、挨次表根本算法性能分析、挨次表的应用。挨次表应用又涉及多方面,有查找问题、排序问题、字符处理问题。其中查找分简洁挨次查找,有序表的二分查找,分块查找三种。排序中分插入排序(直接插入排序、希尔排序)、交换排序(冒泡排序、快速排序)、选择排序(直接选择排序)、归并排序。第三章链表及其应用,分为链表的根本概念、单链表的数据构造、单链表的根本算法、循环链表、链表的应用。第四章堆栈及其应用,分为堆栈堆的根本概念、挨次栈及其根本算法、链栈及其根本算法、堆栈的应用。第五章队列及其应用,分为队列的根本概念、挨次队列及其根本算法、链队列及其根本算法、基数排序问题。第六章特别矩阵和广义表及其应用,分为数组与矩阵,特别矩阵的压缩存储、矩阵的应用实例、广义表。第七章二叉树及其应用。分为二叉树的根本概念、二叉树存储构造、二叉树的遍历算法、线索二叉树、二叉树的应用(根本算法、哈夫曼树、二叉排序树、堆和堆排序)。第八章树和森林及其应用。分为树和森林的根本概念,树的存储构造、树的根本算法及性能分析、树的应用(B树)。第九章散列构造及其应用。分为散列构造的概念等。着重学****了散列表、散列函数、冲突处理方法(开放定址法和链地址法)。第九章图及其应用。分为图的概念、图的存储构造及其根本算法、图的遍历及算法、有向图的连通性和最小生成树、图的最小生成树、非连通图的生成森林算法、最短路径、有向无环图及其应用。第十一章算法性能分析和算法设计方法简介。
二、对各学问点的把握状况
综合以上学问点,我对自我学****成果作如下总结:对于第一章对数据构造的概念理解颇深,也许是每次都要谈论到吧。对算法的时间性能,空间性能根本了解。这些在后面的章节都会有运用。其次章挨次表较为清楚。如何去建一个挨次表,挨次表的一些根本算法都可以很好运用。在挨次表应用中对二分查找映象深刻。对于排序能了解其算法思想。对字符串的处理应用的较少,没有深入了解。第三章链表的学问,由于链表在上学期就有所接触,教师也强调其作用,对链表把握还好,但在第三章中又学****到了新的内容,对其数据构造进展了分析,增加了循环链表,对学问进展补充。第四章堆栈,堆栈是一个运算受限的线性表,可比照挨次表的学****不同的是还有链栈,这局部感觉是全书最简单的局部了。第五章队列是接着堆栈之后的又一个运算受限制的线性表,感觉和堆栈一样简洁。第六章矩阵和广义表是我的弱项,在这局部的学****过程中没有专心学,现在正在深入讨论。接下来的第七章第八章是全书的重点,特殊是第七章二叉树,所以学****的重心也偏向这两章。对二叉树把握较好,其概念,存储,遍历有很好的把握。就是对二叉排序树有点生疏,它的生成算法不是很会。第八章树和森林,树与二叉树之间的转换,森林与二叉树的转换算法思想根本把握。第九章散列的一些学问,没有深入学****也许了解了散列存储构造散列表,散列函数,冲突的处理方法。第十章感觉是很难的一章,学问点多,能够画有向图和无向图的邻接矩阵,邻接表。图的深度遍历和广度遍历,但是其算法只是能读懂。三、学****体会

“数据结构与算法”课程学习总结报告 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数12
  • 收藏数0 收藏
  • 顶次数0
  • 上传人老狐狸
  • 文件大小20 KB
  • 时间2022-09-27