数据结构复习【第一章】
(1)掌握数据结构的基本概念,包括数据、数据项、数据元素、数据的逻辑结构和存储结构;掌握典型的逻辑结构和存储结构特性、表述和设计方法。
关系:数据是由数据元素组成,数据元素是由数据项组成。
数据的逻辑结构和物理结构:
逻辑结构:从具体问题抽象出来的数据模型。
典型逻辑结构:集合、线性表、树、图(注:有序表是逻辑结构)
存储结构:又称为物理结构,是数据及其逻辑结构在计算机中的表示。
依赖于计算机的存储结构,具体:顺序存储(数组)、链式存储(指针)、散列存储(hash)、索引存储
说明:一种数据的逻辑结构可以用多种存储结构来存储,而采用不同的存储结构,其数据处理的效率往往是不同的。
例题:
1、试举一例,说明对相同的逻辑结构,同一种运算在不同的存储方式下实现,其运算效率不同。
答案:线性表中的插入、删除操作在顺序存储方式下平均移动近一半的元素时间复杂度为O(n);而在链式存储方式下插入和删除的时间复杂度都是O(1)(不考虑查找,删除操作前,如果包括查找操作,那么复杂度是O(n))。
2、数据的逻辑结构是指数据的各数据项之间的逻辑关系() 错
分析:逻辑结构是数据元素间的逻辑关系
3、
选C
(2)理解算法特性,掌握算法的描述方法。
算法:是对特定问题求解步骤的一种描述,是指令的有限序列。其中每一条指令表示一个或多个操作。
特性:有穷性、确定性、可行性、输入、输出
算法描述及其特点:(举2例)
1、自然语言描述,特点:容易理解,但是冗长且具有二义性
2、程序设计语言,特点:由计算机执行,但抽象性差,对语言要求高
例题:错的
(3)掌握算法时间和空间复杂度概念及分析方法。
时间复杂度:程序运行从开始到结束所需要的时间。
空间复杂度:程序运行从开始到结束所需的存储空间的度量。
分析方法:看执行次数
例子: