线性表入门

目录

什么是线性表?

线性表的基本操作有哪些?

什么是线性表?

线性表的定义:

如果有如下几个元素:a1,a2,a3......an,数据类型相同,可以构成一个有限序列,那就可以称为线性表。

a2在a3的前面,可以说a2是a3的直接前驱元素,a3在a2的后面,可以说a3是a2的直接后继元素。a1只有一个直接后继,an只有一个直接前驱,其他元素只有一个直接前驱和直接后继。

上述线性表元素有n个,n叫做线性表的长度,n=0时线性表称为空表。

ai时线性表中第i个数据元素,i称为ai在线性表中的位序,i是从1开始的。

举几个生活中的例子:

星座是线性表。每年从第一个星座开始到最后一个星座结尾,中间的星座都有唯一的一个前驱和一个后继。

公司的架构不是线性表。由上至下,上面的每一个职位都对应着下面的多个职位,是“一对多”的结构,前驱和后继并不唯一。

朋友关系不是线性表。一个人可以与多个人建立朋友关系,并不唯一。

线性表的基本操作有哪些?

创建:InitList(&L)  构造一个空的线性表L并分配内存
销毁:DestroyList(&L)  销毁线性表L并释放空间
插入:ListInsert(&L,i,e)  在L的i处插入e
删除:ListDelete(&L,i,&e)  把L的i处的元素删除,e表示删除的值
按值查找:LocateElem(L,e)  在L中找e
按位查找:GetElem(L,i)  获取L中的第i个元素
求表长:Length(L)  返回L的长度
输出:PrintList(L)  按顺序输出L中所有元素
判空:Empty(L)  若L为空返回true,反之返回false

这些操作是最基础的,其他操作可以在上述操作的基础上实现。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值