线性表的顺序表现和实现

对一个线性表具有插入,删除等基本的操作,假设一个线性表a[n],线性表的长度为n,指定位置的操作:

1,在线性表第m个位置插入一个数X,基本操作步骤如下: 

  for(i=n-1;i>m;i++)  a[i+1]=a[i];

a[m]=x;

i++;  共移动n-i个元素

2,删除线性表中第i个位置的数,完成删除的程序段:抹去第i个元素

for(j=i;i<n-1;j++) a[i]=a[i+1];

i--;  共移动n-1-i个元素

指定特征的操作:

通过查找运算,从而把指定特征的操作转变为指定位置的操作:(顺序表的查找)

顺序查找:

查找运算分为表头查找和表尾查找  ,为了提高查找的效率引入了一种新的方法:带监督元

函数体:

int SQsearch(int a[],int i,int n)

{
int i=n;//从表尾开始计数

a[0]=x;//设置监督元

while(a[i]=x)

i--;

return i;

}

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值