- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
“数据结构与算法”课程学习总结报告,数据结构排序算法总结,数据结构与算法总结,数据结构算法总结,数据结构经典算法总结,数据结构课程设计总结,数据结构课程总结,数据结构课程实践总结,数据结构课程设计报告,数据结构实验报告总结
数据结构课程总结
孙博 1104011045 11 计本3班
如何合理的组织数据、高效的处理数据是扩大计算机应用领域、提高软件效率的关键。而在软件开发过程中人们会要求软件工程师们使程序有更高的运行效率。因此要成为一名合格的软件编程员,必须具备数据结构领域和算法设计领域的专门知识。
本学期我们在李红老师的带领下学习了《数据结构结构与算法》一书。这本书安排十分合理,在第一章对全书进行导引和学习的基础知识、预备知识。在2—6章中使逻辑结构为“线性”的数据结构及其应用知识内容。在7、8章中使逻辑结构中的为“树形”的数据结构及应哟就能够只是内容。在第九章中使逻辑结构为“集合性”的数据元素在三列存储下的数据结构及其应用知识内容。在第十章使逻辑结构为“图形”的数据数据结构及其应用知识内容。下面将对各章的内容惊醒总结:
第一章:首先介绍了数据的相关知识,讲述了数据的概、构成等,数据的最小组成单位。然后讲述了数据类型与数据结构。
数据类型包括概念及定义,数据类型包括简单数据类型和复杂数据。简单数据类型有:整数,实属,字符,指针,枚举量等。而复杂数据类型包括:数组,结构图,共用体。
而数据结构主要使讨论元素之间的关系,数据结构包括三方面内容,及逻辑结构,存储结构以及一组运算集合。数据的逻辑结构有四种基本结构:集合性结构,线性结构,树形结构,图形结构。数据的存储结构是指数据严肃在存储器中的存储方式包括顺序存储,链表存储,索引存储,散列存储。
然后介绍以前学习的C语言(及本教材的使用的算法描述工具)知识锦兴路回顾包括指针、结构比阿亮、函数、递归、动态存储分配、文件操作等内容。
第二章:顺序表及其应用主要介绍的是线性逻辑结构的呼声几乎在顺序存储方法下的数据结构顺序标的概念、数据类型 、数据结构、基本运算及相关应用问题。
应用一:查找—介绍了两种方法:简单顺序查找(从书序标的一端来时扫描,将待查找元素与数据节点中的个元素比较。若相等,则查找成功,否则失败)和二分查找(将表中间的记录的关键字与给定的值比较,若相等,则成功。否则,将顺序表风味左右两个字表,然后在子表中进一步查找。)
应用二:排序问题—介绍了交换排序,选择排序,插入排序,归并排序。
插入排序
包括直接插入排序(将顺序表分为左右两个子表,左子表为有序表,右子表为无序表,将右子表中的元素插入左子表中)和希尔排序法(将整个待排序的元素序列分割成若干子序列,对每个子序列分别进行直接插入排序,当整个带排序元素序列“基本有序时”,在进行直接插入排序)
交换排序
冒泡排序:两辆比较待排序元素的关键字,发现相反时即进行交换,知道没有逆序的元素为止。
快速排序算法:在待排序的元素中选定一个“中间数”,将其他数据元素与该数比较,将比其小的数据放道左子表中,比起大的放入右子表中。
选择排序
直接选择排序:将数据进行多谈排序,每趟选出其中的最大数或最小数放在最终位置上,每趟中已排好的数不再参加下一轮的排序。
堆排序:输出堆顶元素(将剩余元素按关键字大小重诚信排列成一个堆(重复上述2个步骤
归并排序
将两个或两个以上的有序表合并成一个新的有序表。
应用三:字符处理问题
介绍了串和顺序串的定义及相关概念,还有顺序串的基本算法。
第三章:介绍链表中数据元素的存储不一定是连续的,还可以占用任意的、不连续的物理存储区域。与顺序表相比,链表的插入、删除不需要移动元素,给算法的效率带来较大的提高这一章中介绍了链表的节点结构、静态与动态链表的概念、链表的基本运算(如求表长、插入、查找、删除等)、单链表的建立(头插法和尾插法)以及双向循环链表的定义、结构、功能和基本算法。单循环链表是一种首尾相接的单链表,终端结点的指针域指向开始结点或头结点。链表终止条件是以指针等于头指针或尾指针。采用单循环链表在实用中多采用尾指针表示单循环链表。优点是查找头指针和尾指针的时间都是O,不用遍历整个链表。
双链表就是双向链表,就是在单链表的每个结点里再增加一个指向其直接前趋的指针域prior,形成两条不同方向的链。由头指针head惟一确定。双链表也可以头尾相构成双循环链表。双链表上的插入和删除时间复杂度均为O。
第四章:堆栈运算受限制的线性结构。其基本运算方法与顺序表和链表运算方法基本相同,不同的是堆栈须遵循“先进后出”的规则,对堆栈的操作只能在栈顶进行;。栈的基本运算有六种:构造空栈:InitStack判栈空:StackEmpty判栈满:StackFull进栈:Push退栈:Pop取栈顶元素:StackTop在顺序栈中有“上溢”和“下溢”的现象。“上溢”是栈顶指针指出栈的外面是出错状态。“下溢”可以表示栈为空栈,因此用来作为控制转移的条件。
顺序栈中的基本操作有六种:构造空栈判栈空判栈满进栈退栈取栈顶元素
链栈则没有上溢的限制,
文档评论(0)