1. 线性表的定义和特点
定义:线性表是具有相同数据类型的n(n
0)个数据元素的有限序列,其中n为表长,当n=0时线性表是一个空表。常用L来命名一个线性表
L=(a1,a2,......ai,ai+1,......an)
a1:是线性表中的第一个元素,称为表头元素
an:是线性表中的最后一个元素,称为表尾元素
除了第一个元素外,每个元素有且仅有一个直接前驱。除了最后一个元素外,每个元素有且仅有一个直接后驱。
注意:线性表是一种逻辑结构,表示元素之间一对一的相邻关系。线性表包括了顺序存储和链式存储,顺序表和链表是指存储结构,两者属于不同层面的概念。
特点:
表中元素的个数有限;
表中元素具有逻辑上的顺序性,表中元素有其先后顺序;
表中元素都是数据元素,每个元素都是单个元素;
表中元素的数据类型都相同,这意味着每个元素占有相同大小的存储空间;
表中元素具有抽象性,即仅讨论元素间的逻辑关系,而不考虑元素究竟表示什么;
2. 线性表的基本操作
InitList(&L):初始化表。构造一个空的线性表(necessary)。
Length(L):求线性表的长度。返回线性表L的长度,即L中数据元素的个数。
LocateElem(L,e):按值查找操作。在表L中查找具有给定关键字值的元素。
GetElem(L,i):按位查找操作。获取表L中第i个位置的元素的值。
ListInsert(&L,i,e):插入操作。在表L中的第i个位置插入指定元素e。
ListDelete(&L,i,&e):删除操作。删除表中L中第i个位置的元素,并用e返回删除元素的值。
PrintList(L):输出操作。按前后顺序输出线性表L的所有元素值。
Empty(L):判空操作。若L为空表,则返回true,否则返回false。
Destroy(&L):销毁操作。销毁新型表,并释放线性表L所占用的所有元素值。
涉及到的英语单词:
init 初始化;系统初始化;初始化函数
length 长度
locate 定位
element 元素 要素
list 表
insert 插入
delete 删除
print 打印 输出
empty 空的
destroy 销毁 毁灭
#include<stdio.h>
void bts(int i){
i=2023;
printf("bts函数内部:i=%d\n",i);
}
int main(){
int i=2024;
printf("调用bts函数前:i=%d\n",i);
bts(i);
printf("调用bts函数后:i=%d\n",i);
return 0;
}
#include<stdio.h>
void bts(int &i){
i=2023;
printf("bts函数内部:i=%d\n",i);
}
int main(){
int i=2024;
printf("调用bts函数前:i=%d\n",i);
bts(i);
printf("调用bts函数后:i=%d\n",i);
return 0;
}