/*思想:
1)先找到x元素的插入位置(顺序表从左到右依次比较,若A元素大于x元素,那么x元素插入的位置就是A元素所在的位置)
2)将A元素所在的位置的元素以及它之后的所有元素后移一个位置(因为是后移,为了不覆盖元素我们需要将这些元素从右到左开始依次后移)(从左到右后移的话会将元素覆盖,可以自行尝试)(后移后产生一个空位置)
3)将 x元素插入到A元素初始的位置 (即 2)中的空位置)
4)将顺序表的长度加1(不要忘记)
*/
typedef struct
{//顺序表的结构体
int data[maxsize];
int length;
}Sqlist;
void find(Sqlist L, int x)
{//找到x元素的插入位置
for(i=0; i<L.length; i++)
{
if(L.data[i]>x)
{
break;
}
}
return i;
}
void insert(Sqlist &L, int x)
{//后移及插入 ,因为顺序表要改变,所以记得加上&
int i,j;
j=find(L,n);
for(i=L.length-1; i>=j; i--)
{
L.data[i+1]=L.data[i];
}
L.data[j]=x;
L.length++;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)