/* 函数功能:顺序表的元素删除 函数输入:顺序表地址、删除位置、接收删除值的元素 函数输出:删除成功,返回1;删除失败,返回0 */ #define MAXSIZE 100 typedef int ElemType; typedef struct { ElemType data[MAXSIZE]; int last; }SeqList; //顺序表的删除(将顺序表中下标为k的元素删除) int Delete(SeqList *L,int k,ElemType *e) { int j; if (L->last == 0) //空表 return 0; if (k < 0 || k > L->last) //删除非法 return 0; *e = L->data[k]; for (j = k;j <= L->last;j++) L->data[j] = L->data[j+1]; L->last--; return 1; } /* 算法思想:1.判断是否为空表 2.判断删除位置是否为合法位置 3.将要删除的元素放入e中 4.从第k+1个元素开始,将元素依次向前移动一个单位 */
线性表_顺序表的删除
猜你喜欢
转载自www.cnblogs.com/Safe-Man/p/11945262.html
今日推荐
周排行