用算法实现:(1)将一个顺序表中从第i个结点开始的k节点删除

用算法实现:(1)将一个顺序表中从第i个结点开始的k节点删除... 用算法实现:(1)将一个顺序表中从第i个结点开始的k节点删除 展开
 我来答
kzq2006
2006-12-16 · TA获得超过315个赞
知道答主
回答量:225
采纳率:0%
帮助的人:159万
展开全部
#define LIST_INIT_SIZE 80
// 线性表存储空间的初始分配量
#define LISTINCREMENT 10

typedef struct{ // 线性表存储空间的分配增量
ElemType *elem; // 存储空间基址
int length; // 当前长度
int listsize; // 当前分配的存储容量
// (以sizeof(ElemType)为单位)
} SqList; // 俗称 顺序表
Status ListDelete_Sq
(SqList &L, int i, ElemType &e) {

if ((i < 1) || (i > L.length)) return ERROR;
// 删除位置不合法
p = &(L.elem[i-1]); // p 为被删除元素的位置
e = *p; // 被删除元素的值赋给 e
q = L.elem+L.length-1; // 表尾元素的位置
for (++p; p <= q; ++p) *(p-1) = *p;
// 被删除元素之后的元素左移
--L.length; // 表长减1
return OK;
} // ListDelete_Sq
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式