02线性表

02线性表

前言

一,线性表的定义和基本操作

二,线性表的实现

1,顺序存储   2,链式存储   3,线性表的应用

2.1线性表的定义和基本操作

2.1.1线性表的定义

线性表定义为一个有限序列组成的线性表

线性表是具有相同数据类型的n(n>=0)个数据元素的有限序列。其中n为表长,n=0时候,该线性表是一个空表。

线性有序的逻辑结构正是线性表的由来。

注意:线性表是一种逻辑结构,表示元素之间一对一的相邻关系。

顺序表和链表是指存储结构。

2.1.2线性表的基本操作

一个数据结构的基本操作是指其最核心,最基本的操作。

线性表的主要操作如下:

2.2线性表的顺序表示

2.2.1顺序表的定义

顺序表的顺序存储又称顺序表。他是用一组地址连续的存储单元,依次存储线性表中数据元素。从而逻辑上相邻的两个数据元素在物理位置上也是相邻的。

注意:线性表中元素的位序是从1开始的,而数组中的下标是从0开始的。

一维数组可以静态分配也可以动态分配。

注意:动态分配并不是链式存储,同样还是属于顺序存储结构,其物理结构没有发生变化。依然是随机存取方式,只是分配的大小可以在运行时决定。

顺序表的主要特点是随机访问。通过首地址和元素序号可以在O(1)的时间内找到指定的元素。

顺序表的存储密度高,每个结点只存储数据元素。顺序表逻辑上相邻的元素在物理位置上也相邻。所以插入和删除操作需要移动大量的数据元素。

2.2.2顺序表上的基本操作的实现

(1)插入操作

在顺序表L的第i个位置 插入新元素e。如果i的输入不合法,则返回false,表示插入失败。否则,将顺序表的第i个元素以及以后的所有元素右移一个位置,腾出一个空位置插入新元素e,顺序表长度增加1,插入成功,返回true。

(2)删除操作

综合应用

猜你喜欢

转载自blog.csdn.net/will5451/article/details/81567514