数据结构基础
1) 数据结构的基本概念及有关术语:
数据 是描述客观事物的数字、 字符以及所有能输入到计算机中并能被计算机接受的各种
符号集合的统称。
表示一个事物的一组数据称为一个 数据元素 ,数据元素是数据的基本单位。它可以是一
个不可分割的原子项,也可以由多个数据项组成。
数据类型 是指一个类型和定义在这个类型上的操作集合。
数据结构 (data structure )指数据元素之间存在的关系
数据的逻辑结构 是指 数据元素之间的逻辑关系 ,用一个数据元素的集合和定义在此集合
上的若干关系来表示,常被称为数据结构。
根据数据元素之间逻辑关系的不同数学特性,数据结构可分为三种: 线性结构、树结构
和图 ,其中 树结构和图又称为非线性结构 。P2
数据元素及其关系在计算机中的存储表示或实现 称为 数据的存储结构 , 也称为 物理结
构。数据的逻辑结构从逻辑关系角度观察数据, 与数据的存储无关, 是独立与计算机的。
而数据的存储结构是逻辑结构在计算机内存中的实现,是依赖于计算机的。
数据存储结构的基本形式有两种: 顺序存储结构和链式存储结构 。
数据的存储结构被分为 顺序结构、链接结构、索引结构、散列结构 四种
算法 是一个有穷规则的集合,其规则确定一个解决某一特定类型问题的操作序列。
算法分析 主要包含 时间代价 和 空间代价 两个方面。
时间代价 就是当问题的规模以某种单位由 1 增至 n 时,解决该问题的算法实现运行时所
消耗的时间,也以某种单位由 f(1) 增至 f(n) ,则称该算法的时间代价为 f(n) 。
空间代价 就是当问题的规模以某种单位由 1 增至 n 时,解决该问题的算法实现运行时所
消耗的空间,也以某种单位由 g(1) 增至 g(n) ,则称该算法的空间代价为 g(n) 。
算法的时间及空间复杂性
度量算法的时间效率
算法的时间效率指算法的执行时间随问题规模的增长而增长的趋势, 通常采用时间复杂
度来度量算法的时间效率。 T(n)=O(f(n))
度量算法的空间效率
空间复杂度指算法在执行时为解决问题所需要的额外内存空间, 不包括输入数据所占用
的存储空间。 S(n)=O(f(n))
2 ) 基本数据结构及其操作:
线性表 是由 n(n>=0) 个类型相同的数据元素 a0,a1, … ,a(n-1) 组成的有限序列。 P36
线性表的逻辑结构 :
其中,元素 ai 的数据类型可以是整数、浮点数、字符或类; n 是线性表的元素个数,称
为线性长度。若 n=0, 则为空表;若 n>0,ai(0
有后继元素 a(i+1),a0 没有前驱元素, a(n-1) 没有后继元素
线性表的存储结构 (顺序存储、链式存储)
线性表的顺序存储结构 使用一组连续的内存单元依次存放线性表的数据元素, 元素在内
存的物理存放次序与它们在线性表中的逻辑次序相同,即元素 ai 与其前驱 a(i-1) 及后
继 a(i+1) 的存储位置相邻。 顺序存储的线性表也称为顺序表 。
线性表的链式存储 是用若干地址分散的存储单元存储数据元素,
本文介绍了数据结构的基本概念,包括数据元素、数据类型和数据结构的逻辑结构。数据结构分为线性结构、树结构和图。重点讨论了线性表,它是由相同类型元素组成的有限序列,可采用顺序存储或链式存储。顺序存储结构中元素按逻辑顺序存储,链式存储则使用分散的存储单元。同时,提到了算法的时间代价和空间代价,以及如何通过时间复杂度和空间复杂度来衡量算法效率。

被折叠的 条评论
为什么被折叠?



