12 2.3线性表的类型定义(青岛大学-王卓)笔记

1.数据对象 2.数据关系 3.基本操作

抽象数据类型线性表定义:

ADT List{
数据对象:D={ai|ai属于Elemset,(i=1,2.....n,n>=0)}
数据关系:R={<ai-1,ai>|ai-1,ai属于D,(i=2,3...,n)}
基本操作:
初始线性表: InitList(&L);//初始化线性表,构造一个空的线性表L
        
销毁线性表: DestroyList(&L);//销毁线性表(表不存在了)
         
 清空线性表:ClearList(&L);//清空线性表    (表还存在)
         
确认表是否为空: ListEmpty(L);//表存在的情况下,若表为空,返回true,否则为false.
        
 表长: ListLength(L);//在表存在的情况下,返回表的元素个数,长度。
         
 找第i个数字:GetElem(L,i,&e);//在表存在情况下,用e返回线性表L中第i个数据元素的值。
         
 看表里面有没有元素e: 
LocateElem(L,i,compare());//compare是数据元素判定函数,返回L中第一个与e满足compare()的数据元

素的位序,若这样的数据元素不存在,则返回值为0;
          
找前趋: PriorElem(L,cur_e,&pre_e);//若cur_e是L的数据元素,且不是第一个,则用pre_e返回它的前趋,否则操作失败;pre_e无意义;

找后继: NextElem(L,cur_e,&next_e);若cur_e是L的数据元素,且不是第最后一个,则用next_e返回它的后继,否则操作失败;next_e无意义;
          
插入元素:ListInsert(&L,i,e);//在第i个位置插入新元素e,L的长度加1
         
删除元素: ListDelete(&L,i,&e);//删除第i个位置的数据元素,并且用e返回其值,L的长度减1.
        
遍历:  ListTraverse(&L,visited());//依次对线性表中每个元素调用visited();
}ADT List

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值