len-1)kРnРanРloc(a1)+(n-1)kР…Р…Р…РiРaiРloc(a1)+(i-1)kР…Р…Р…Р2Рa2РLoc(a1)+(2-1)kР1Рa1РLoc(a1)Р逻辑地址Р内存空间状态Р存储地址Р顺序存储结构示意图Р空闲Р2.2 线性表的顺序存储结构Р7Р第 2 章线性表РC语言定义Р#define maxsize 线性表可能达到的最大长度?typedef struct?{ ? ElemType elem[maxsize]; ? int last; ?} SeqList;Р2.2 线性表的顺序存储结构Р8Р第 2 章线性表Р基本运算Р①查找操作Р②插入操作Р③删除操作Р2.2 线性表的顺序存储结构Р9Р第 2 章线性表Р①查找操作Р按序号查找GetData(L,i):Р要求查找线性表L中第i个数据元素,其结果是L.elem[i-1] 。Р按内容查找Locate(L,e):Р要求查找线性表L中与给定值e相等的数据元素,其结果?是:若在表L中找到与e相等的元素,则返回该元素在表?中的序号;若找不到,则返回一个“空序号”,如-1。Р2.2 线性表的顺序存储结构Р10Р第 2 章线性表Р按内容查找Locate(L,e):Р2.2 线性表的顺序存储结构Рint Locate(SeqList L,ElemType e)?{?? i=0 ; ? while (L.elem[i]!=e)? i++;? return(i+1); ? ?}Р((i<=L.last)&&(L.elem[i]!=e))Рif (i<=L.last) return(i+1); ? else return(-1);Р对吗?Р#define maxsize 100?typedef struct?{ ? ElemType elem[maxsize]; ? int last; ?} SeqList;