《2022数据结构与算法课程总结.docx》由会员分享,可在线阅读,更多相关《2022数据结构与算法课程总结.docx(9页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、2022数据结构与算法课程总结 数据结构与算法课程总结数据结构与算法课程学习总结报告11计本一班许雪松1104013018数据结构与算法是计算机程序设计的重要理论技术基础,它不仅是计算机科学的核心课程,而且也已经成为其他理工专业的热门选修课。总的来说感受还是比较深的,刚起先上的时候还蛮简洁的,越到后面感觉越难,算法也更困难了,有时候甚至听不懂,老师上课时讲的也蛮快的,所以只能靠课下下功夫了。下面是我对本学期学习这门课的总结。一、数据结构与算法学问点第一章的数据结构和算法的引入,介绍了数据和数据类型、数据结构、算法描述工具、算法和算法评价四个方面的学问。其次章详细地介绍了依次表的概念、基本运算及
2、其应用。基本运算有:初始化表、求表长、排序、元素的查找、插入及删除等。元素查找方法有:简洁依次查找、二分查找和分块查找。排序方法有:干脆插入排序、希尔排序、冒泡排序、快速排序、干脆选择排序及归并排序等。最终介绍了依次串的概念,重点在于串的模式匹配。第三章主要介绍的是线性逻辑结构的数据在链接存储方法下数据结构链表的相关学问。主要是单链表、循环链表的数据类型结构、数据结构、基本运算及其实现以及链表的相关应用问题,在此基础上介绍了链串的相关学问。在应用方面有多项式的相加问题、归并问题、箱子排序问题和链表在字符处理方面的应用问题等。本章未完全驾驭的是循环链表的算法问题和C的描述。第四章介绍在两种不同的
3、存储结构下设计的堆栈,即依次栈和链栈的相关学问,了解堆栈的相关应用,驾驭应用堆栈来解决实际问题的思想及方法。本章主要内容是依次栈和链栈的概念、数据类型、数据结构定义和基本运算算法及其性能分析。本章堆栈算法思想较为简洁,所以能较好驾驭。第五章主要介绍依次存储和链接存储方法下的两种队列、依次(循环)队列和链队列的数据结构、基本运算及其性能分析以及应用。依次队列(重点是循环队列)和链队列的概念、数据类型描述、数据结构和基本运算算法及其性能分析等。本章同堆栈有点类似,算法思想较为简洁,所以能较好驾驭;但难点重在循环队列队空、队满的推断条件问题。第六章“特别矩阵、广义表及其应用”将学习数组、稀疏矩阵和广
4、义表的基本概念,几种特别矩阵的存储结构及其基本运算,在此基础上学习特别矩阵的计算算法与广义表应用等相关问题。本章的重点是相关数据结构的存储结构及其基本运算算法。驾驭了特别矩阵的压缩存储结构,在该存储结构下元素的定位方法,理解了稀疏矩阵的计算和广义表的存储结构。第七章二叉树及其应用。分为二叉树的基本概念、二叉树存储结构、二叉树的遍历算法、线索二叉树、二叉树的应用(哈夫曼树、二叉排序树、堆和堆排序、基本算法)。基本算法包括二叉树的建立、遍历、线索化等算法。在此基础上,介绍二叉树的一些应用问题,包括哈夫曼编码问题、(平衡)二叉排序树问题和堆排序问题等。第八章说的是树和森林,首先我们要知道树与二叉树是
5、不同的概念。课本介绍了树和森林的概念、遍历和存储结构,还有树、森林和二叉树的相互关系,树或森林怎样转化成二叉树,二叉树又如何转换为树和森林等算法。第九章“散列结构及其应用”是逻辑结构“集合型”的数据元素在散列存储方法下的数据结构及其应用学问内容。主要介绍散列函数的概念、散列结构的概念、散列存储结构的概念-散列表、散列函数和散列表中解决冲突的处理方法-开放定址法、链地址法以及散列表的基本算法及其性能分析。本章概念较为多,所以驾驭不太好。第十章图及其应用。分为图的概念、图的存储结构及其基本算法、图的遍历及算法、有向图的连通性和最小生成树、图的最小生成树、非连通图的生成森林算法、最短路径、有向无环图
6、及其应用。二、对各学问点的驾驭状况我对各学问点的驾驭状况总结如下:对于第一章对数据结构的概念理解颇深,也许是每次都要谈论到吧。对算法的时间性能,空间性能基本了解。这些在后面的章节都会有运用。其次章本章重点和难点在查找和排序问题的算法思想上,6种排序方法的性能比较。本章未驾驭的为希尔排序、快速排序、归并排序的时间困难度分析。第三章,对链表驾驭还好,对其数据结构进行了分析,有循环链表,驾驭的不是很好,对其中一些用法不娴熟。第四章堆栈,本章堆栈算法思想较为简洁,所以能较好驾驭,但表达式计算问题未驾驭好的。第五章的循环队列队空、队满的推断条件问题驾驭的不是很好。第六章的重点是相关数据结构的存储结构及其
7、基本运算算法。驾驭了特别矩阵的压缩存储结构,在该存储结构下元素的定位方法,理解了稀疏矩阵的计算和广义表的存储结构。第七章对二叉树驾驭较好,其概念,存储,遍历有很好的驾驭。就是对二叉排序树有点生疏,它的生成算法不是很会。第八章树树与二叉树之间的转换,森林与二叉树的转换算法思想基本驾驭。第九章散列的一些学问,没有深化学习,也许了解了散列存储结构散列表,散列函数,冲突的处理方法。第十章了解了图的逆邻接表的存储结构,关键路径求解算法未能驾驭好,不能敏捷运用图的不同数据结构和遍历算法解决困难的应用问题。三、学习体会刚刚接触这门课时,看到课本中全是算法,当时就晕了,因为我的C语言学的不好,我担忧会影响这门
8、课的学习,后来上课时老师说学习这门课的基础是C语言,所以我当时就确定肯定要好好补补,争取不被拖后腿,在学习这门课的期间,也遇到了不少问。但是通过学习数据结构与算法,让我对程序有了新的相识,也有了更深的理解。同时,也让我相识到,不管学习什么,概念是基础,全部的学问框架都是建立在基础概念之上的,所以,第一遍看课本要将概念熟记于心,然后构建学问框架。并且,对算法的学习是学习数据结构的关键。在其次遍看课本的过程中,要注意对算法的驾驭。对于一个算法,读一遍可能能读懂,但不行能完全领悟其中的思想。驾驭一个算法,并不是说将算法背过,而是驾驭算法的思想。我们须要的是耐性。每看一遍就会有这一遍的收获。读懂算法之
9、后,自己再默写算法,写到不会的地方,看看课本想想自己为什么没有想到。对算法的应用上,学习算法的目的是利用算法解决实际问题。会写课本上已有的算法之后,可以借其思想进行扩展,逐步提高编程实力。四、对课程教学的建议1、课程课时较紧,课堂上的练习时间较少,讲解的东西越多,头脑有时就很混乱。2、感觉上课时的气氛不是很好,虽然大部分人都在听,可是效果不是很好。所以希望老师能在授课中间能穿插一些活跃课堂氛围的话题,可以是大家都特别关切的一些内容,这样既让大家能在思索之余有一个放松,也能够提高学生的学习主动性和学习效率。3、学习的主动性很重要,有时候我们花了很长时间去写试验报告,也很仔细的去理解去驾驭,可是最
10、终试验报告可能就只得了一个C,抄的人反而得A,这样的话很简单打击学生的主动性,在后面的试验报告中没动力再去仔细写。所以希望老师能在这方面有所调整。4、虽然讲课的时间很紧,但是还是希望老师能在讲解并描述学问点的时候能运用实际的调试程序来给我们讲解,这样的话能让我们对这些内容有更深刻的印象和理解。扩展阅读:数据结构与算法课程学习总结报告数据结构与算法课程学习总结报告计科系10级计本一、数据结构与算法学问点数据结构与算法这本书共有十一个章节。从第一章的数据结构和算法的引入,介绍了数据和数据类型、数据结构、算法描述工具、算法和算法评价四个方面的学问。其次章则介绍了依次表及其应用的相关学问。从依次表的基
11、本概念起先,分别介绍了依次表基本算法、依次表基本算法性能分析、依次表的应用。依次表应用又涉及多方面,有查找问题、排序问题、字符处理问题。其中查找分简洁依次查找,有序表的二分查找,分块查找三种。排序中分插入排序(干脆插入排序、希尔排序)、交换排序(冒泡排序、快速排序)、选择排序(干脆选择排序)、归并排序。第三章链表及其应用,分为链表的基本概念、单链表的数据结构、单链表的基本算法、循环链表、链表的应用。第四章堆栈及其应用,分为堆栈堆的基本概念、依次栈及其基本算法、链栈及其基本算法、堆栈的应用。第五章队列及其应用,分为队列的基本概念、依次队列及其基本算法、链队列及其基本算法、基数排序问题。第六章特别
12、矩阵和广义表及其应用,分为数组与矩阵,特别矩阵的压缩存储、矩阵的应用实例、广义表。第七章二叉树及其应用。分为二叉树的基本概念、二叉树存储结构、二叉树的遍历算法、线索二叉树、二叉树的应用(基本算法、哈夫曼树、二叉排序树、堆和堆排序)。第八章树和森林及其应用。分为树和森林的基本概念,树的存储结构、树的基本算法及性能分析、树的应用(B树)。第九章散列结构及其应用。分为散列结构的概念等。着重学习了散列表、散列函数、冲突处理方法(开放定址法和链地址法)。第九章图及其应用。分为图的概念、图的存储结构及其基本算法、图的遍历及算法、有向图的连通性和最小生成树、图的最小生成树、非连通图的生成森林算法、最短路径、
13、有向无环图及其应用。第十一章算法性能分析和算法设计方法简介。二、对各学问点的驾驭状况综合以上学问点,我对自我学习成果作如下总结:对于第一章对数据结构的概念理解颇深,也许是每次都要谈论到吧。对算法的时间性能,空间性能基本了解。这些在后面的章节都会有运用。其次章依次表较为清楚。如何去建一个依次表,依次表的一些基本算法都可以很好运用。在依次表应用中对二分查找映象深刻。对于排序能了解其算法思想。对字符串的处理应用的较少,没有深化了解。第三章链表的学问,由于链表在上学期就有所接触,老师也强调其作用,对链表驾驭还好,但在第三章中又学习到了新的内容,对其数据结构进行了分析,增加了循环链表,对学问进行补充。第
14、四章堆栈,堆栈是一个运算受限的线性表,可对比依次表的学习,不同的是还有链栈,这部分感觉是全书最简单的部分了。第五章队列是接着堆栈之后的又一个运算受限制的线性表,感觉和堆栈一样简洁。第六章矩阵和广义表是我的弱项,在这部分的学习过程中没有专心学,现在正在深化探讨。接下来的第七章第八章是全书的重点,特殊是第七章二叉树,所以学习的重心也偏向这两章。对二叉树驾驭较好,其概念,存储,遍历有很好的驾驭。就是对二叉排序树有点生疏,它的生成算法不是很会。第八章树和森林,树与二叉树之间的转换,森林与二叉树的转换算法思想基本驾驭。第九章散列的一些学问,没有深化学习,也许了解了散列存储结构散列表,散列函数,冲突的处理
15、方法。第十章感觉是很难的一章,学问点多,能够画有向图和无向图的邻接矩阵,邻接表。图的深度遍历和广度遍历,但是其算法只是能读懂。三、学习体会开学伊始,听说要学数据结构与算法,而且考试通过率极低,就带着这样恐惊的心理起先学习了。通过学习数据结构与算法让我对程序有了新的相识。“数据结构和算法”课程主要学习在软件开发中涉及到的各种常用数据结构及其常用算法,在此基础上,学习如何利用数据结构和算法解决一些基本的应用问题,通过学习我了解了相关领域的基础学问和基本应用。知道了学习一种数据结构必需驾驭该数据结构的定义,其包括逻辑结构,存储结构和基本算法还有基本应用学问。对于一个应用程序,不是它能运行,能显示结果
16、就行了,还要考虑它的各方面的性能,时间性能,空间性能。以此节约空间和时间。给定一个程序首先要分析其应有的数据结构。怎么存储,怎么性能会比较好。“数据结构与算法”是一门很有用的科目,可是也是很令人头疼的学科,这也熬炼了我们迎难而上的毅力。当然学习数据结构与算法是建立在学习好计算机语言的基础上的,学习编程是味同嚼蜡的,学据结构给我带来更多的是思索的东西。课程结束我总结了学习过程中遇到的困难,有时写不出合条件的算法,在写试验报告时,有时就是将书上的源程序搬上去,对程序进行一些修改。针对这一状况我会渐渐改正。多加思索。四、对课程教学的建议1、课程课时较紧,课堂上的练习时间较少,讲解的东西越多,头脑有时
17、就很混乱。2、长期的ppt教学,会使产生疲惫,稍不留神,思维开了小差,就跟不上了。可以适当结合ppt和例题讲解。通过课堂的习题讲解,加深对学问点的驾驭,同时对各学问点的运用有一个更为直观和详细的相识。友情提示:本文中关于数据结构与算法课程总结给出的范例仅供您参考拓展思维运用,数据结构与算法课程总结:该篇文章建议您自主创作。本文来源:网络收集与整理,如有侵权,请联系作者删除,谢谢!第9页 共9页第 9 页 共 9 页第 9 页 共 9 页第 9 页 共 9 页第 9 页 共 9 页第 9 页 共 9 页第 9 页 共 9 页第 9 页 共 9 页第 9 页 共 9 页第 9 页 共 9 页第 9 页 共 9 页