数据结构之线性表(二)

129 阅读2分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

(2) 链式存储方式 是指每个存储结点除了含有一个数据元素外, 还包含指针, 每个指针指向一个与本结点有逻辑关系的结点, 用指针表示数据元素之间的逻辑关系。 除了上述两种存储方式之外,还有索引存储方式和散列存储方式。

一个算法在执行期间所需要的存储空间量应包括以下三个部分: (1) 程序代码所占用的空间; (2) 输入数据所占用的空间; (3) 辅助变量所占用的空间, 在估算算法空间复杂度时, 一般只需要分析辅助变量所占用 的空间。

1.3 算法分析

评价一个算法的好坏:

时间复杂度、空间复杂度 如:T(n)=O(n的2次方 ),这种表示法称为大 O 表示法,它的含义是:当 n 充分大时,算法的执行 时间与 n的2次方 成正比。

空间复杂度 空间复杂度是对一个算法在运行过程中临时占用存储空间大小的量度。 通常可记为: S(n) =0(g(n)) 其中, g(n)为问题规模 n 的某个函数。

2.0 线性表

2.1 基本概念

基本特征: 线性表中结点具有一对一的关系, 如果结点数不为零, 除起始结点没有直接前驱外, 其他每个结点有且仅有一个直接前驱; 除终端结点没有直接后继外, 其他每个结点有且仅有一个直接后继在这里插入图片描述

线性表的合并和归并的区别: 合并:只是将两个线性表合并为一个线性表,并不保证是有序的。 归并:要求两个线性表合并之后,仍然有序