C语言数据结构-顺序表的插入与删除(图文详解)

内容概要

本篇推文主要给大家介绍顺序表插入和删除的操作原理以及其具体的代码实现,了解顺序表的几种基本运算,要注意理解插入删除算法的原理掌握其实现代码

顺序表的基本运算

顺序表的插入运算

顺序表上完成插入运算的步骤如下:

  1. 将第n个至第i个位置的元素顺序向后移动一个位置,为新元素空出第i个位置。
  2. 将x置入空出的第i个位置。
  3. 表长加1。

C语言数据结构-顺序表的插入与删除(图文详解)_第1张图片

代码实现
int Insert_SeqList (SeqList *L,ElemType x,int i)
{  //在下标为i的位置插入新元素
    int k;
    if (i< 0||i>L->length || L->length==MAXSIZE)
         return 0;
    else
   {
        for(k=L->length; k>= i; k--)
            L->data [k]=L->data [k-1];
        L->data[i]=X;
        L->length=L->length+l;
   }
   return 1;
}

顺序表的删除运算

顺序表上完成删除运算的步骤如下:

  1. 将第i+1个至第n个的元素依次向前移动一个位置。
  2. 表长减1。

C语言数据结构-顺序表的插入与删除(图文详解)_第2张图片

代码实现
int Delete_SeqList (SeqList *L, int i) 
{  //将下标为i的元素删除
     int k;
     if (i< 0 || i>L->length)   //下标越界
           return 0;
     else					//移动后面的元素
    {
          for(k=i;klength;k++)
                L->data[k]=L->data[k+1];
          L->length--;
     }
     return 1;
}

你可能感兴趣的:(数据结构,c语言)