链表 删除一定范围内结点
struct _lnklist{
ElemType data;
struct _lnklist *next;
};
typedef struct _lnklist Node;
typedef struct _lnklist *LinkList;
void lnk_del(LinkList L, ElemType mink, ElemType maxk)
{
LinkList p, pre, temp;
p = L;
pre = p;
p = p->next;
while (p && p->data < maxk) {
if (p->data <= mink) {
pre = p;
p = p->next;
} else if (p->next && (p->data > mink)) {
pre->next = p->next;
temp = p;
p = p->next;
free(temp);
}
}
return;
}
欢迎在评论区讨论