对一个线性表具有插入,删除等基本的操作,假设一个线性表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;
}