//函数功能: 删除元素 //初始条件: 顺序线性表L已存在, i>=1 && i<ListLength(L) //操作结果: 在L中删除第i个元素并用e返回其值 Status ListDelete(LinkList *L, int i, ElemType *e) { int j; LinkList p,q; p = *L; j = 1; while(p->Next && j<i) { p = p->Next; j++; } if(!(p->Next) || j>i) { return ERROR; } q = p->Next; p->Next = q->Next; *e = q->Next; free(q); return OK; }
本文介绍了一种从顺序线性表中删除指定位置元素的方法,并提供了相应的C语言实现代码。该函数首先验证输入的有效性,然后遍历链表找到待删除节点的前驱节点,更新链接指向并释放被删除节点的内存。
1446

被折叠的 条评论
为什么被折叠?



