苏仕华版自考数据结构笔记 总结

合集下载

20XX年自学考试《数据结构》各章复习要点总结(1)-自学考试.doc

20XX年自学考试《数据结构》各章复习要点总结(1)-自学考试.doc

2010年自学考试《数据结构》一至三章复习要点总结第一章概论数据就是指能够被计算机识别、存储和加工处理的信息的载体。

数据元素是数据的基本单位,可以由若干个数据项组成。

数据项是具有独立含义的最小标识单位。

数据结构的定义:·逻辑结构:从逻辑结构上描述数据,独立于计算机。

·线性结构:一对一关系。

·线性结构:多对多关系。

·存储结构:是逻辑结构用计算机语言的实现。

·顺序存储结构:如数组。

·链式存储结构:如链表。

·稠密索引:每个结点都有索引项。

·稀疏索引:每组结点都有索引项。

·散列存储结构:如散列表。

·对数据的操作:定义在逻辑结构上,每种逻辑结构都有一个运算集合。

·常用的有:检索、插入、删除、更新、排序。

·数据类型:是一个值的集合以及在这些值上定义的一组操作的总称。

·原子类型:由语言提供。

·结构类型:由用户借助于描述机制定义,是导出类型。

抽象数据类型ADT:·是抽象数据的组织和与之的操作。

相当于在概念层上描述问题。

·优点是将数据和操作封装在一起实现了信息隐藏。

程序设计的实质是对实际问题选择一种好的数据结构,设计一个好的算法。

算法取决于数据结构。

算法是一个良定义的计算过程,以一个或多个值输入,并以一个或多个值输出。

评价算法的好坏的因素:·算法是正确的;·执行算法的时间;·执行算法的存储空间(主要是辅助存储空间);··取结点:GetNode(L,i) ·查找:LocateNode(L,x) ·插入:InsertList(L,x,i) ·删除:Delete(L,i)顺序表是按线性表的逻辑结构次序依次存放在一组地址连续的存储单元中。

在存储单元中的各元素的物理位置和逻辑结构中各结点相邻关系是一致的。

数据结构 知识点总结

数据结构 知识点总结

数据结构知识点总结一、基本概念数据:所有能被输入到计算机并被处理的符号的集合。

数据元素:数据的基本单位,也称为结点、节点或记录。

数据项:构成数据元素的不可分割的最小单位。

抽象数据类型:抽象数据组织和与之相关的操作,通常采用数据对象、数据关系、基本操作集这样的三元组来表示。

二、逻辑结构数据的逻辑结构是从逻辑关系上描述数据,它与数据的存储无关,是独立于计算机的。

数据元素之间的关系(逻辑结构)可分为四类:集合结构:数据元素之间除了“属于同一集合”的关系外,别无其它关系。

线性结构:数据元素之间存在一对一的关系,如数组、链表、队列和栈等。

树形结构:数据元素之间存在一对多的关系,如二叉树、多叉树等。

图结构或网状结构:数据元素之间存在多对多的关系。

三、存储结构数据对象在计算机中的存储表示称为数据的存储结构,也称物理结构。

数据元素在计算机中有两种基本的储存结构:顺序存储结构:借助元素在存储器中的相对位置来表示数据元素之间的逻辑关系,通常借助程序设计语言的数组类型来描述。

链式存储结构:无需占用一整块存储空间,数据元素的存储位置不必连续,而是通过指针链接形成逻辑关系。

四、数据结构的运算数据结构中的运算包括插入、删除、查找、遍历等,这些运算的实现依赖于具体的逻辑结构和存储结构。

五、数据结构的应用数据结构在各个领域都有广泛的应用,如数据库系统、计算机网络、图形处理等。

通过合理地选择和设计数据结构,可以提高程序的运行效率,降低存储空间的占用。

六、数据结构与算法的关系数据结构和算法是相辅相成的。

数据结构是算法的基础,算法的实现依赖于特定的数据结构。

同时,算法的优化也往往需要对数据结构进行改进和调整。

总结来说,数据结构是计算机科学中的核心概念之一,它涉及数据的组织、存储和运算等多个方面。

理解和掌握数据结构的基本知识点和原理,对于提高编程能力和解决实际问题具有重要意义。

数据结构复习资料复习提纲知识要点归纳

数据结构复习资料复习提纲知识要点归纳

数据结构复习资料复习提纲知识要点归纳数据结构复习资料:复习提纲知识要点归纳一、数据结构概述1. 数据结构的定义和作用2. 常见的数据结构类型3. 数据结构与算法的关系二、线性结构1. 数组的概念及其特点2. 链表的概念及其分类3. 栈的定义和基本操作4. 队列的定义和基本操作三、树结构1. 树的基本概念及定义2. 二叉树的性质和遍历方式3. 平衡二叉树的概念及应用4. 堆的定义和基本操作四、图结构1. 图的基本概念及表示方法2. 图的遍历算法:深度优先搜索和广度优先搜索3. 最短路径算法及其应用4. 最小生成树算法及其应用五、查找与排序1. 查找算法的分类及其特点2. 顺序查找和二分查找算法3. 哈希查找算法及其应用4. 常见的排序算法:冒泡排序、插入排序、选择排序、归并排序、快速排序六、高级数据结构1. 图的高级算法:拓扑排序和关键路径2. 并查集的定义和操作3. 线段树的概念及其应用4. Trie树的概念及其应用七、应用案例1. 使用数据结构解决实际问题的案例介绍2. 如何选择适合的数据结构和算法八、复杂度分析1. 时间复杂度和空间复杂度的定义2. 如何进行复杂度分析3. 常见算法的复杂度比较九、常见问题及解决方法1. 数据结构相关的常见问题解答2. 如何优化算法的性能十、总结与展望1. 数据结构学习的重要性和难点2. 对未来数据结构的发展趋势的展望以上是数据结构复习资料的复习提纲知识要点归纳。

希望能够帮助你进行复习和回顾,加深对数据结构的理解和掌握。

在学习过程中,要注重理论与实践相结合,多进行编程练习和实际应用,提高数据结构的实际运用能力。

祝你复习顺利,取得好成绩!。

数据结构知识点整理

数据结构知识点整理

数据结构知识点整理第一点:数据结构的基本概念与类型数据结构是计算机科学中的一个重要分支,它研究的是如何有效地存储、组织和管理数据,以便于计算机可以高效地进行数据的读取、插入、删除等操作。

数据结构的基本概念主要包括两个方面:数据的逻辑结构与数据的物理结构。

1.1 数据的逻辑结构数据的逻辑结构主要描述数据的逻辑关系,不涉及数据的存储方式。

常见的逻辑结构有:•线性结构:如线性表、栈、队列、串等。

线性结构的特点是数据元素之间存在一对一的关系,每个数据元素只有一个直接前驱和一个直接后继。

•非线性结构:如树、图等。

非线性结构的特点是数据元素之间存在一对多或者多对多的关系。

其中,树结构是一种重要的非线性结构,它具有层次性,每个数据元素(树节点)有零个或多个子节点。

1.2 数据的物理结构数据的物理结构主要描述数据在计算机内存中的存储方式,它直接影响了计算机对数据的访问效率。

常见的物理结构有:•顺序存储结构:如数组、链表等。

顺序存储结构将数据元素按照一定的顺序存放在计算机内存中,相邻的数据元素在内存中也是相邻的。

•链式存储结构:如单链表、双向链表、循环链表等。

链式存储结构通过指针将不连续的数据元素连接起来,每个数据元素只存储数据本身以及指向下一个数据元素的指针。

1.3 数据结构的应用场景不同的数据结构适用于不同的应用场景。

例如:•线性表:适用于顺序访问数据元素的场景,如学生成绩管理系统。

•栈和队列:适用于后进先出(LIFO)或先进先出(FIFO)的场景,如表达式求值、任务调度等。

•树结构:适用于具有层次关系的数据组织,如文件系统的目录结构、HTML文档的DOM树等。

•图结构:适用于表示复杂的关系,如社交网络、交通网络等。

第二点:常见数据结构算法与应用在计算机科学中,算法是解决问题的一系列清晰指令。

结合数据结构,算法可以有效地解决实际问题。

以下是一些常见的数据结构及其相关算法与应用。

2.1 线性表的算法与应用线性表是最基本的逻辑结构。

数据结构笔记整理

数据结构笔记整理

数据结构笔记整理数据结构是计算机科学中非常重要的一门课程,它研究的是如何将数据组织和存储在计算机中,以便能够高效地访问和操作数据。

以下是我整理的数据结构的一些笔记:1. 数组(Array):数组是一种线性数据结构,它由相同类型的元素组成,并且在内存中是连续存储的。

可以通过索引来访问数组中的元素。

数组的优点是可以在O(1)的时间复杂度内访问元素,缺点是插入和删除元素的时间复杂度比较高。

2. 链表(Linked List):链表也是一种线性数据结构,它由节点组成,每个节点包含一个存储数据的元素和一个指向下一个节点的指针。

链表的优点是插入和删除元素的时间复杂度比较低,缺点是访问元素的时间复杂度比较高。

3. 栈(Stack):栈是一种特殊的线性数据结构,它遵循先进后出(LIFO)的原则。

可以使用数组或链表实现栈。

栈的常见操作包括压入(push)和弹出(pop)元素。

4. 队列(Queue):队列也是一种特殊的线性数据结构,它遵循先进先出(FIFO)的原则。

可以使用数组或链表实现队列。

队列的常见操作包括入队(enqueue)和出队(dequeue)元素。

5. 树(Tree):树是一种非线性数据结构,它由节点和边组成。

每个节点可以有多个子节点,根节点没有父节点。

常见的树结构包括二叉树(Binary Tree)和二叉搜索树(Binary Search Tree)。

6. 图(Graph):图是一种非线性数据结构,它由节点和边组成。

节点表示实体,边表示实体之间的关系。

图可以是有向的或无向的,可以有权重或无权重。

7. 堆(Heap):堆是一种特殊的树结构,它是一个完全二叉树,并且满足堆序性质,即节点的值大于等于(或小于等于)其子节点的值。

堆常用于实现优先队列。

8. 散列表(Hash Table):散列表是一种基于散列函数实现的数据结构,它可以用来存储键值对。

通过散列函数,可以将键映射到数组的特定位置,从而实现高效的查找和插入操作。

苏仕华版自考数据结构笔记总结

苏仕华版自考数据结构笔记总结

第一章概论1、若结点的存储地址与其关键字之间存在某种映射关系则称为:散列存储结构。

2、数据类型通常称为原子型和结构型。

索引存储:附加索引表。

关键字是能唯一标识一个元素的一个数据项或多个数据项的组合。

3、抽象数据类型是指数据逻辑结构及与之相关的操作第二章线性表4、顺序表便于按号查找结点5、顺序表中插入一个元素平均需要移动n/2删除一个元素平均需要移动(n-1)/26、最节省时间的存储结构式:仅有尾指针的单循环链表,带头结点的双循环链表。

7、将线性表的数据元素按其逻辑次序依次存入一组地址连续的存储单元里,用这种方法存储的线性表称为顺序表。

8、在第i个元素之前插入一个新元素需要进n-i+1次移动,在第i个元素之后插入一个新元素需要后移n-i个元素。

9、单链表中每个结点的存储地址是存放在其直接前驱结点的指针域中10、在双链表中要删除已知结点*p,其时间复杂度为O(1)第三章栈和队列11、循环队列出队列:(front+1)%m 入队列:(rear+1)%m 循环队列元素个数:(rear-front+m)%m12、栈的链式存储结构:不需要判断栈满单需要判断栈空。

顺序存储结构:既需要判断栈空也需要判断栈满且需要置空栈。

13、递归实现和函数调用时,处理参数及返回地址,应采用的数据结构是堆栈。

14、初始top为n+1,则X入栈操作:top=top-1; V[top]=X;第四章多维数组和广义表15、二维数组Am*n按行优先顺序存储公式:LOC(aij) = LOC(a00) + (i*n+j)*d16、三位数组A m*n*p按行优先顺序存储公式:LOC(a ijk) = LOC(a000)+(i*n*p+j*p+k)*d17、应许结点共享的表称为再入表。

广义表的深度:展开后所含括号的层数。

18、稀疏矩阵的三元组表是顺序存储结构19、广义表表头和表尾深度相同,则广义表深度+1,不同则为深度最深。

20、假设以行优先顺序将一个n阶的5对角矩阵压缩存储到一维数组Q中,则数组Q的大小至少为5n-6(n>5)。

数据结构必考知识点总结

数据结构必考知识点总结

数据结构必考知识点总结在准备考试时,了解数据结构的基本概念和相关算法是非常重要的。

以下是一些数据结构的必考知识点总结:1. 基本概念数据结构的基本概念是非常重要的,包括数据、数据元素、数据项、数据对象、数据类型、抽象数据类型等的概念。

了解这些概念有助于更好地理解数据结构的本质和作用。

2. 线性表线性表是数据结构中最基本的一种,它包括顺序表和链表两种实现方式。

顺序表是将数据元素存放在一块连续的存储空间内,而链表是将数据元素存放在若干个节点中,每个节点包含数据和指向下一个节点的指针。

了解线性表的概念和基本操作是非常重要的。

3. 栈和队列栈和队列是两种特殊的线性表,它们分别具有后进先出和先进先出的特性。

栈和队列的实现方式有多种,包括数组和链表。

掌握栈和队列的基本操作和应用是数据结构的基本内容之一。

4. 树结构树是一种非线性的数据结构,它包括二叉树、多路树、二叉搜索树等多种形式。

了解树的基本定义和遍历算法是必考的知识点。

5. 图结构图是一种非线性的数据结构,它包括有向图和无向图两种形式。

了解图的基本概念和相关算法是非常重要的,包括图的存储方式、遍历算法、最短路径算法等。

6. 排序算法排序是一个非常重要的算法问题,掌握各种排序算法的原理和实现方式是必不可少的。

常见的排序算法包括冒泡排序、选择排序、插入排序、快速排序、归并排序等。

7. 查找算法查找是另一个重要的算法问题,包括顺序查找、二分查找、哈希查找、树查找等。

了解各种查找算法的原理和实现方式是必考的知识点之一。

8. 算法复杂度分析算法的时间复杂度和空间复杂度是评价算法性能的重要指标,掌握复杂度分析的方法和技巧是非常重要的。

9. 抽象数据类型ADT是数据结构的一种概念模型,它包括数据的定义和基本操作的描述。

了解ADT的概念和实现方式是非常重要的。

10. 动态存储管理动态存储管理是数据结构中一个重要的问题,包括内存分配、内存释放、内存回收等。

了解动态存储管理的基本原理和实现方式是必考的知识点之一。

自学考试《数据结构》各章复习要点总结

自学考试《数据结构》各章复习要点总结
星形测针的校正
测头的测力和测针的长度
测力影响测量精度 选择适合测针长度的测头,注意测力和测针长度(重量)的协调。 自动更换测针组的校正必须成组校正
测针长度与触发角度
测量元素的分析
单击此处添加文本具体内容
PART.02
元素的测针半径补偿
点的半径补偿方向,以坐标系的轴向和测头回退方向为准。
测量元素的分析
测针校正的方法
量块、环规、球 测头校正有多种方法:可以利用量块、环规进行测量,改变测针直径直到测量出准确结果。 最好的校正是使用标准球,既可以测准直径,又可以得出测针的位置关系。
为什么测针的等效直径小于名义值
只有接触后才能触发。 触发后的计数锁存的时间。 测量机停止时惯性。 测针变形。 测针越长,等效直径越小。 校正测针的速度要与测量速度一致。
面、线的测头补偿。 圆、圆柱、圆锥的半径补偿。 曲线、曲面的半径补偿。 测量误差和测点的数量
测量元素的分析
测量距离 小平面的距离。 测孔还是测圆柱。
坐标系
单击此处添加文本具体内容
PART.03
测量公差(如:位置度)的需要。 程序测量的需要。 准确测量的需要。 辅助测量。
零件坐标系
为什么建零件坐标系
几个难题
小圆弧
小于1/4圆,会出现很大的测量误差,分辨力、重复性原因。增加测量点。 改变方法,测量轮廓。 拟合的方法。(根据具体情况,探讨)
拟合法测量小圆弧
几个难题
同轴度
基准与被测的关系。 测量方法的限制。 按照实际使用的情况处理。
同轴度测量
窄平面的平行和垂直度 窄平面对矢量方向影响大的因素。 输入参考长度的选择。 转换测面为测线。
回转体零件坐标系
单击此处添加正文,文字是您思想的提炼,为了演示发布的良好效果,请言简意赅地阐述您的观点。您的内容已经简明扼要,字字珠玑,但信息却千丝万缕、错综复杂,需要用更多的文字来表述;但请您尽可能提炼思想的精髓,否则容易造成观者的阅读压力,适得其反。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
17、 应许结点共享的表称为再入表。广义表的深度:展开后所含括号 的层数。
18、 稀疏矩阵的三元组表是顺序存储结构
19、 广义表表头和表尾深度相同,则广义表深度+1,不同则为深度最 深。
20、 假设以行优先顺序将一个n阶的5对角矩阵压缩存储到一维数组Q 中,则数组Q的大小至少为5n-6(n>5)。
后一个记录交换,这正好与选择排序相反。堆排序就是一个不断建堆的 过程。
最好情况 最坏情 时间复杂度 空间复杂 排序算法


直接选择 排序
O(n2)
O(1)
不稳定
堆排序
O(log2n)
O(1)
不稳定
6、归并排序的基本思想:首先将待排序文件看成n个长度为1的有序子 文件,把这些子文件两两归并,得到n/2个长度为2的有序子文件,然后 再把这n/2个有序的子文件两两归并, 如此反复,知道最后得到一个长度为n的有序文件位置,这种排序方法 称为二路归并排序。
3.1直接插入排序是一个就地排序(若排序算法所需要的额外空间相 对于输入数据量来说是一个常数,则成该类排序算法为就地排序)。
最好情 最坏情


时间复杂度
空间复杂 排序算法 度
直接插 正序

O(n)
逆序 O(n2)
O(n2)
O(1)
稳定
希尔排 序
O(nlog2n)或 O(n1.25)
O(1)
不稳定
4、 交换排序的基本思想:两两比较待排序记录的关键字,如果发现两 个记录的次序相反时即进行交换,知道所有记录都没有反序时为止。包
按层次遍历,按
O(n2)
层带有大小顺序 邻接表:
依次访问
O(n+e)
最小生成树:普利姆算法和克鲁斯卡尔算法 46、 最短路径:迪杰斯特拉算法:按路径长度递增的顺序产生诸顶点
的最短路径算法,图中某顶点到其他顶点的最短路径。O(n+e) 47、 带权图的最短路径问题,路径长度指:路径上各边的权值之和。 48、 我们把这种顶点表示活动,边表示活动间先后关系的有向无环图
括:冒泡排序和快速排序
4.1冒泡排序是相邻元素之间的比较和交换,快速排序记录关键字的比 较和记录的交换是从两端向中间进行的,即该元素将比它大的和小的区
分在两边,例如:23 16 35 67 36 70
最好情况 最坏情 时间复杂度 空间复杂 排序算法


冒泡排序
O(n2)
O(1)
稳定
快速排序(划分交换 排序)
38、 已知一颗含有50个节点的二叉树中只有一个叶子结点,则该二叉 树中度为1的结点个数为49。
39、 一颗完全二叉树中含有1000个结点,则其中度为2的结点个数 为499.
40、 用二叉链表保存有n个结点的二叉树,则结点中有n+1个空指针 域。
41、 在含100个结点的完全二叉树中,叶子结点的个数为50。 42、 已知完全二叉树的第4层有4个结点,则其叶子结点数是6。 43、 已知完全二叉树的第7层有8个结点,则叶子结点数是32。 2、 最优二叉树(哈夫曼树)
动(n-1)/2 6、 最节省时间的存储结构式:仅有尾指针的单循环链表,带头结点
的双循环链表。 7、 将线性表的数据元素按其逻辑次序依次存入一组地址连续的存储
单元里,用这种方法存储的线性表称为顺序表。 8、 在第i个元素之前插入一个新元素需要进n-i+1次移动,在第i个元素
之后插入一个新元素需要后移n-i个元素。 9、 单链表中每个结点的存储地址是存放在其直接前驱结点的指针域
O(nlog2n) O(log2n) 不稳定
5、选择排序的基本思想:每一趟在待排序的记录中选出关键字最小的 记录,一次存放在已排序号的记录序列的最后,知道全部记录排序完为 止。包括:直接选择排序和堆排序
5.1堆排序:完全二叉树的顺序存储结构,利用完全二叉树中双亲结 点和孩子结点之间的内在联系,在当前无序区中选择关键字最大(或最 小)记录。堆排序正是利用大根堆(小根堆)来选取当前无序区中关键 字最大(最小)的记录实现排序的。每一趟排序的操作是:将当前无序 区调整成一个大根堆,选取关键字最大的堆顶记录,将它和无序区中最
第7章 :排序
1、 排序过程中需要进行两种基本操作:比较两个关键字的大小、改变 指向记录的指针或移动记录本身。而待排序记录的存储方式一般有三
种:顺序结构、链式结构和辅助表结构。评价排序算法的标准主要有两 条:执行算法需要的时间,以及算法所需要的附加空间。 2、 内排序:插入、选择、交换、归并和分配排序。 3、 插入排序的基本思想:每次将一个待排序的记录按其关键字的大小 插入到前面已排好序的文件中的适当位置,知道全部记录插入完为止。 包括:直接插入排序和希尔排序。
,则n0=n2+1 25、 满二叉树:一颗深度为k且有2k-1个结点的二叉树成为满二叉树. 26、 完全二叉树:若一棵深度为K的二叉树,其前k-1层是一个满二叉
树,而下一层(即第k层)上的结点都集中在该层最左边的若干位 置上,则称为完全二叉树 27、 具有n个结点的完全二叉树的深度为logn+1或者log(n+1)。 28、 已知一棵度为3的树中,度为2的结点数为4,度为3的结点数为3, 则该树中叶子结点为11 29、 含有3个结点a,b,c的二叉树,前序序列a,b,c且后序序列为cba的二叉 树共有4棵。 30、 哈夫曼树:带权路径长度最短的树。哈夫曼树一个有2n-1个结点。 31、 若一棵具有n(n>0)个结点的二叉树的先序序列与后序序列正好相 反,则二叉树的高度一定为n. 32、 一棵左子树为空的二叉树的前序线索化后,其空指针为2。 33、 在左右子树均不空的先序线索二叉树中,空链域的数目是1。 34、 一棵树的后序遍历等价于该二叉树的中序遍历。 35、 森林:m棵互不相交树的集合。若将一棵树的根结点删除,就得到 该树构成的森林。 36、 N个顶点的生成树有n-1条边。一个带权的无向连通图的最小生成 树有一颗或多棵。 37、 已知二叉树的中序序列和后序序列均为ABCDEF,则先序序列 为FEDCBA。
中 10、 在双链表中要删除已知结点*p,其时间复杂度为O(1)
第3章 栈和队列
11、 循环队列出队列:(front+1)%m 入队列:(rear+1)%m 循环队 列元素个数:(rear-front+m)%m
12、 栈的链式存储结构:不需要判断栈满单需要判断栈空。顺序存储 结构:既需要判断栈空也需要判断栈满且需要置空栈。
利用哈夫曼树求得的用于通信的二进制编码称为哈夫曼编码。树中 从根到每个结点都有一条路径,对路径上的各分支约定指向左子树的分 支表示“0”码,指向右子树的分子表示“1”码,取每条路径上 的“0”或“1”的序列作为每个叶子结点对应的字符编码,这就是哈夫曼编 码。
第6章 图
44、 无向图边或弧e的取值范围0~n(n-1)/2 有向图边或弧的取值范围 0~n(n-1)
45、 深度优先算法(DFS)遍历类似于树的前序遍历。广度优先遍历 (BFS)类似于树的按层遍历
时间复遍历类似于树的 前序遍历,从顶 点v出发,依次访
问邻接点
邻接矩阵: O(n2)
邻接表: O(n+e)
广度优先算法 遍历类似于树的 邻接矩阵:
O(n)
(BFS)
查询成功时平均长度:ASL=((n+1)/n) * log2(n+1) - 1 ,二分查找的 最坏性能和平均性能相当接近。
二分查找速度快快,效率高,适用于表不易改动且又经常查找的情 况。时间复杂度:O(log2n) 3、 索引顺序查找(分块查找):是一种介于顺序查找和二分查找之间 的查找方法。
在表中插入或删除一个记录时,只要找到该记录所属的块,就可以 在该块内进行插入或删除运算。插入或删除记录时无需移动大量记录。 缺点:需要一个辅助数组的存储空间,不适宜用链式存储结构。时间复 杂度:O(n的开根号) 4、 散列表查找:1 散列存储中使用的函数H(key)称为散列函数或哈希 函数。它实现关键字到存储地址的映射。H(key)的值称为散列地址或哈 希地址,使用的数组空间是线性表进行散列存储的地址空间,被称为散 列表或哈希表2处理冲突的方法:a、开放定址法 b、拉链法
在两个节点构成的路径上的分支(边)数目称为路劲长度,而树根 到树中每个结点的路径长度之和称为路径长度。完全二叉树就是这种路 径长度最短的二叉树。
从树根结点到某结点之间的路径长度与该节点上权的乘积称为该结 点的带权路径长度,树中所有叶子结点的带权路径长度之和称为该树的 带全路径长度,通常记为:WPL = w1l1 + w2l2 + …+ wili
第8章 :查找
1、顺序查找:
顺序查找成功时的平均查找长度约为表长的一半:ASL=(n+1)/ 2,查 找最多需要n+1次。
如果查找成功和不成功机会相等,那么顺序查找的平均查找长 度:3/4*(n+1)
优点:简单,且对表的结构无任何要求,无论是顺序存储还是链式 存储,无论是否有序,都适用。缺点:效率低。时间复杂度:O(n) 2、二分查找:又称折半查找,效率较高。二分查找要求查找对象的线 性表必须是顺序存储结构的有序表。
第5章 :树和二叉树
1、 二叉树的性质 21、 一个结点拥有的子树称为该树的度,一棵树中结点的最大度称为
该树的度。 22、 度为零的结点称为叶子结点或终端结点,树中的最大层次称为该
树的深度或高度 23、 在二叉树的第i层上至多有2i-1个节点,深度为K的二叉树至多有
2k-1个结点。 24、 对任何一棵二叉树T,若其终端结点数为n0,度数为2的节点数为n2
最好情况 最坏情 时间复杂度 空间复杂 排序算法


归并排序
O(nlog2n)
7、 分配排序:箱(桶)排序和基数排序
相关文档
最新文档