线性表的逻辑结构

今天我们来讲第一种数据结构:线性表。线性表中数据元素有一个基本的特点。就是除了第一个元素和最后一个元素之外,其他的每一个元素都有一个前驱和一个后驱。比如26个英文字(a,b,c,d...x,y,z)这一组数据中包含26个元素,除了第一个元素a和最后一个元素z之外,其他每个元素都有一个前驱节点和一个后驱节点,那么这样的逻辑结构我们称为线性表。
本章节下面介绍的内容是对线性表的一些概念描述以及后面常用的一些伪代码关键词,如果实在看不懂也没关系,可以直接跳过,在后面的章节和代码学习明白之后再回来看也可以。

对于顺序表的主要有以下操作

1、Insert 在顺序表中插入一个元素
2、Delete 从顺序表中删除一个元素
3、Update 修改顺序表中的一个元素
4、Get 查询顺序表中是否存在指定的元素
5、Print 输出顺序表中所有元素
后续的课程我们将围绕这些操作依次进行实现。

几个伪代码词语说明

以下几个伪代码大家有点印象,后面在描述伪代码的时候会用到,如果实在不理解,也可以看具体的示例代码,示例代码中也会有对应的体现
1、currentNode:当我们对链表进行遍历的时候,会定义一个起始指针指向头节点,然后依次挪动指针,这个currentNode指的就是当前遍历的节点。
2、preNode:currentNode的前驱节点。
2、newNode:指的是一个新节点,一般在创建或者插入节点的时候会看见这个伪代码。

线性表的物理结构:顺序实现和链式实现。

数组在内存中就是一块连续的内存,并且提供了一个可以直接访问的方法(通过下标访问)。所以数组的结构正好符合书顺序存储的需求
线性表的顺序实现主要通过一维数组、二维数组、多维数组实现。

链式实现主要通过链表实现。链表有单链表、双向链表、循环链表