数据结构期末复习总结.docx

数据结构期末复习总结.docx

ID:52199573

大小:35.11 KB

页数:9页

时间:2020-03-24

数据结构期末复习总结.docx_第1页
数据结构期末复习总结.docx_第2页
数据结构期末复习总结.docx_第3页
数据结构期末复习总结.docx_第4页
数据结构期末复习总结.docx_第5页
资源描述:

《数据结构期末复习总结.docx》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、数据结构总结(建议转换成pdf格式阅读)第一章绪论数据就是指能够被计算机识别、存储和加工处理的信息的载体。数据元素是数据的基本单位,有时一个数据元素可以由若干个数据项组成。数据项是具有独立含义的最小标识单位。如整数这个集合中,10这个数就可称是一个数据元素.又比如在一个数据库(关系式数据库)中,一个记录可称为一个数据元素,而这个元素中的某一字段就是一个数据项。数据结构的定义包括以下三方面内容:逻辑结构、存储结构、和对数据的操作。数据的逻辑结构分为:线性结构、树形结构、复杂结构数据的存储结构分为:顺序表示、链接表示、散列表示、索引表示时间复杂度和渐近时间复杂度:前者是某个算法的时间耗费,

2、它是该算法所求解问题规模n的函数,而后者是指当问题规模趋向无穷大时,该算法时间复杂度的数量级。当我们评价一个算法的时间性能时,主要标准就是算法的渐近时间复杂度,因此,在算法分析时,往往对两者不予区分,经常是将渐近时间复杂度T(n)=O(f(n))简称为时间复杂度,其中的f(n)一般是算法中频度最大的语句频度。算法中语句的频度不仅与问题规模有关,还与输入实例中各元素的取值相关。但是我们总是考虑在最坏的情况下的时间复杂度。以保证算法的运行时间不会比它更长。第二章线性表线性表的逻辑结构特征是很容易理解的,如其名,它的逻辑结构特征就好象是一条线,上面打了一个个结,很形象的,如果这条线上面有结,

3、那么它就是非空表,只能有一个开始结点,有且只能有一个终端结点,其它的结前后所相邻的也只能是一个结点(直接前趋和直接后继)。关于线性表上定义的基本运算,主要有构造空表、求表长、取结点、查找、插入、删除等。线性表的逻辑结构和存储结构之间的关系。在计算机中,如何把线性表的结点存放到存储单元中,就有许多方法,最简单的方法就是按顺序存储。就是按线性表的逻辑结构次序依次存放在一组地址连续的存储单元中。在存储单元中的各元素的物理位置和逻辑结构中各结点相邻关系是一致的。在顺序表中实现的基本运算主要讨论了插入和删除两种运算。对于顺序表的插入和删除运算,其平均时间复杂度均为O(n)。线性表的链式存储结构。

4、它与顺序表不同,链表是用一组任意的存储单元来存放线性表的结点,这组存储单元可以分布在内存中任何位置上。因此,链表中结点的逻辑次序和物理次序不一定相同。所以为了能正确表示结点间的逻辑关系,在存储每个结点值的同时,还存储了其后继结点的地址信息(即指针或链)。这两部分信息组成链表中的结点结构。对于单链表,其操作运算主要有建立单链表(头插法、尾插法和在链表开始结点前附加一个头结点的算法)、查找(按序号和按值)、插入运算、删除运算等。以上各运算的平均时间复杂度均为O(n).其主要时间是耗费在查找操作上。循环链表是一种首尾相接的链表。也就是终端结点的指针域不是指向NULL空而是指向开始结点(也可设

5、置一个头结点),形成一个环。采用循环链表在实用中多采用尾指针表示单循环链表。这样做的好处是查找头指针和尾指针的时间都是O(1),不用遍历整个链表了。判别链表终止的条件也不同于单链表,它是以指针是否等于某一指定指针如头指针或尾指针来确定。双链表就是双向链表,就是在单链表的每个结点里再增加一个指向其直接前趋的指针域prior,这样形成的链表就有两条不同方向的链。使得从已知结点查找其直接前趋结点可以和查找其直接后继结点的时间一样缩短为O(1)。双链表一般也由头指针head惟一确定。双链表也可以头尾相链接构成双(向)循环链表。顺序表和链表的比较具体要求顺序表链表基于空间适于线性表长度变化不大,

6、易于事先确定其大小时采用。适于当线性表长度变化大,难以估计其存储规模时采用。基于时间由于顺序表是一种随机存储结构,当线性表的操作主要是查找时,宜采用。链表中对任何位置进行插入和删除都只需修改指针,所以这类操作为主的线性表宜采用链表做存储结构。若插入和删除主要发生在表的首尾两端,则宜采用尾指针表示的单循环链表。第三章字符串串就是字符串,是一种特殊的线性表,它的每个结点仅由一个字符组成。空串:是指长度为零的串,也就是串中不包含任何字符(结点)。空白串:指串中包含一个或多个空格字符的串。不同与空串,它的结点就是一个空格字符。在一个串中任意个连续字符组成的子序列称为该串的子串,包含子串的串就称

7、为主串。子串在主串中的序号就是指子串在主串中首次出现的位置。如A="Iloveyou",B="love",则B在A中的序号为3,注意空格也是字符。空串是任意串的子串,任意串是他自身的子串。串是特殊的线性表(结点是字符),所以串的存储结构与线性表的存储结构类似。串的顺序存储结构简称为顺序串,顺序串又可按存储分配的不同分为静态存储分配的顺序串和动态存储分配的顺序串。静态的意思可简单地理解为一个确定的存储空间,它的长度是不可变的。如直接使用定长的字符

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。