数据结构-严蔚敏 清华大学PPT:查找运算解析

需积分: 9 2 下载量 164 浏览量 更新于2024-08-21 收藏 705KB PPT 举报
"查找运算-清华大学严蔚敏 数据结构 PPT" 在计算机科学中,数据结构是组织和存储数据的方式,以便高效地执行各种操作。严蔚敏教授的《数据结构》课程是深入理解这一核心概念的重要资源。本节主要讨论的是查找运算,这是数据结构中的一个重要组成部分。 首先,我们关注的是“查找运算”。查找是指在数据集合中寻找特定元素的过程。在描述中提到,查找运算分为两种情况:按序号查找。在链表中,由于其非连续的存储特性,即使知道要访问的结点序号,也无法像顺序表那样直接访问。在链表中,必须从头结点开始,沿着链接指针逐个结点遍历,直到找到目标结点。如果链表长度为n,要查找第i个结点,合法的序号范围是1到n,但考虑到头结点,有时会将其视为第0个结点。因此,链表的查找效率通常比顺序表低,因为不是随机存取结构。 接着,我们回顾一下数据结构的基本概念。数据是信息的基本单位,可以是数字、字符、图像等各种形式。数据结构则关注如何有效地组织和存储这些数据,以支持各种操作,如插入、删除、查找等。数据结构包括逻辑结构和物理结构两个方面。逻辑结构关注数据之间的关系,如线性结构(如数组、链表)、树结构、图结构等;物理结构则涉及数据在内存中的实际布局。 在数据结构中,抽象数据类型(ADT)是一个重要的概念,它是对数据类型的高级描述,只关注其操作而不关注其实现细节。例如,栈和队列是两种常见的ADT,它们定义了一组特定的操作,如入栈、出栈和入队、出队。ADT可以通过不同的数据结构来实现,如数组或链表。 算法是解决问题的具体步骤,是数据结构的另一大支柱。在设计算法时,我们需要考虑其效率,通常通过时间复杂度和空间复杂度来衡量。时间复杂度表示算法执行时间与输入数据大小的关系,而空间复杂度则表示算法运行过程中所需的内存空间。在设计查找算法时,高效的数据结构和算法能显著提高查找速度,减少不必要的计算和存储需求。 例如,电话号码查询系统中的数据结构选择,可能会影响查找效率。二维数组、表结构或向量都可以用于存储名字和电话号码,但不同的结构在查找时可能会有不同的性能表现。在多叉路口交通灯管理问题中,数据结构的选择和设计对于优化交通流量至关重要。 数据结构与查找运算紧密相关,理解并掌握不同类型数据结构的查找方法对于编写高效程序至关重要。严蔚敏教授的《数据结构》课程提供了深入探讨这些问题的宝贵资源,对于学习者来说是不可多得的学习材料。