25计算机考研,数据结构知识点整理(内容借鉴了王道408+数据结构教材),还会不断完善所整理的内容,后续的内容也会不断更新(可以关注),若有错误和不足欢迎各位朋友指出!
目录
一.线性表的定义
(1)线性表是具有相同数据类型的n(n>0)个数据元素的有限序列,其中n为元素个数即表长,当n=0时线性表是一个空表。若用L命名线性表,则一般表示为
L=(, ,..., ,...,)
- 式中,是唯一的”第一个”数据元素,又称表头元素;是唯一的“最后一个”数据元素,又称表尾元素。
- 这里的数据元素(1≤i≤n)在不同情况下具体含义可以不同,它既可以是原子类型,也可以是结构类型,但个线性表中的数据元素必须属于同一数据对象
- 除第一个元素外,每个元素有且有一个直接前驱。除最后一个元素外,每个元素有且仅有一个直接后继。(“直接前驱”和“前驱”、“直接后继”和“后继”通常被视为同义词)
- 同一线性表中的元素必定有相同特性,数据元素间的关系是线性关系。
以上就是线性表的逻辑特性,这种线性有序的逻辑结构正是线性表名字的由来。
(2)线性表的特点:
① 同一性。线性表由同类数据元素组成,每一个必须属于同一数据类型,意味着每个元素占有相同的大小的存储空间。
② 有穷性。线性表由有限个数据元素组成,表长度就是表中数据元素的个数。
③ 有序性。线性表中相邻数据元素之间存在着序偶关系<,>。有先后次序。
④ 抽象性。即仅讨论元素间的逻辑关系,而不考虑元素究竟表示什么内容
注意:
线性表是一种逻辑结构,表示元素之间一对一的相邻关系。顺序表和链表是指存储结构,两者属于不同层面的概念,因此不要将其混淆。
二.线性表的基本操作
一个数据结构的基本操作是指其最核心、最基本的操作。其他较复杂的操作可通过调用其基本操作来实现。线性表的主要操作如下:
InitList(&L):初始化表。构造一个空的线性表。
Length(L):求表长。返回线性表L的长度,即L中数据元素的个数。
LocateElem(L,e):按值查找操作。在表L中查找具有给定关键字值的元素的个数。
Getelem(L,i):按位査找操作。获取表中第i个位置的元素的值。
ListInsert(&L,i,e):插入操作。在表L中的第i个位置上插入指定元素e。
ListDelete(&L,i,&e):删除操作。删除表L中第i个位置的元素,并用e返回删除元素的值。
PrintList(L):输出操作。按前后顺序输出线性表L的所有元素值。
Empty(L):判空操作。若L为空表,则返回true,否则返回false。
DestroyList(&L):销毁操作。销毁线性表,并释放线性表L所占用的内存空间。
标签:知识点,线性表,元素,基本操作,操作,数据结构,数据
From: https://blog.csdn.net/qq_63492484/article/details/139220615