顺序表功能的实现--插删

我们先来定义一个基本的顺序表

#define int SLDataType
typdef struct Seqlist
{
  SLDataType * arr;
  int size;
  int capacity;
}SL;

这是我们接下来将要实现的功能

//头部插⼊删除
//尾部插⼊删除
void SLPushBack(SL* ps, SLDataType x);//尾插
void SLPopBack(SL* ps);//尾删
void SLPushFront(SL* ps, SLDataType x);//头插
void SLPopFront(SL* ps);//头删
//指定位置之前插⼊
//删除数据
void SLInsert(SL* ps, int pos, SLDataType x);//插入
void SLErase(SL* ps, int pos);//删除
//寻找指定数据
int SLFind(SL* ps, SLDataType x);//寻找

 我们首先实现尾插

void SLPushBack(SL* ps, SLDataType x)
{
   assert(ps);
   SLCheckCapacaity(ps);//检查顺序表容量是否满了,满了就加
   ps->arr[size]=x;
}

尾插是最简单的,只需要在末尾加上就行

再来实现头插

尾删

头删

在指定位置插入数据

删除指定位置数据

销毁顺序表

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值