即日起在codingBlog上分享您的技术经验即可获得积分,积分可兑换现金哦。

线性表—顺序表-顺序表基本运算的实现

编程语言 weixin_38195506 15℃ 0评论

基本运算——初始化线性表


lintList


这里写图片描述


目标是构造出一个空的线性表


分配空间后,将length成员设置为0


对L的作用会传递回去

基本运算——销毁线性表


DestroyList


这里写图片描述


C free() C++delete()

基本运算——判断是否为空表


ListEmpty


这里写图片描述


bool类型 C没有


C++才有


C自己构造一个

基本运算——求线性表长度


ListLength


这里写图片描述

基本运算——输出线性表


DispList


这里写图片描述


先判断是否为空,再用一个循环输出,顺序的输出每一个元素。

基本运算——求每个数据元素的值


GetElem(L,i,e)


功能:


返回L中第i个元素的值,存放在e中


这里写图片描述

注意逻辑顺序和物理顺序的不一样


逻辑中的第i个是物理中的第i-1个

e为引用,实际参数和形式参数共享空间

基本云散——按元素值查找


LocateElem(L,e)


查找第一个值域与e相等的元素的 逻辑位序 。若这样的元素不存在则返回0.


这里写图片描述

基本运算——插入数据元素


ListInsert(L,i,e)


这里写图片描述


这里写图片描述


i是逻辑位序


注意把逻辑序号转化为物理序号


一个后移循环算法


for (j=L->length; j>i; j–) //元素后移


L->data[j]=L->data[j-1];


//注意 L->data[i]=e; 这里的i是物理位序


逻辑上这里的i=i-1 因为前面i–了 !!注意区别


这里写图片描述

基本运算——删除数据元素


ListDelete(L,i,e)


功能删除顺序表L的第i个元素


这里写图片描述

转载请注明:CodingBlog » 线性表—顺序表-顺序表基本运算的实现

喜欢 (0)or分享 (0)
发表我的评论
取消评论

*

表情