链表删除元素怎么写
答案:1 悬赏:10 手机版
解决时间 2021-02-17 22:46
- 提问者网友:骑士
- 2021-02-17 05:17
链表删除元素怎么写
最佳答案
- 五星知识达人网友:春色三分
- 2021-02-17 05:57
单向链表节点的一般形式:
struct node{
int value;
node *next;};
每个链表节点的next成员即为指向下个节点的指针。
不管链表是单向链表还是双向链表或者其他什么形式,删除元素的思想是要知道即将被删除的元素,以及该元素的上一个节点和下一个节点。把即将被删除的元素的指针成员的值赋给其上一个节点的指针成员,再删除元素,就能完成任务。
比如要删除一个值为n的元素,我们可以如下判断:
node *temp = p->next;
if (temp->value == n){
p->next = temp->next;
delete temp;}
else
p = temp;
如此加上循环就能搜索链表中符合要求的元素并删除。
如有特定的应用问题需要编程,或者需要更详细的解答,可联系我。
struct node{
int value;
node *next;};
每个链表节点的next成员即为指向下个节点的指针。
不管链表是单向链表还是双向链表或者其他什么形式,删除元素的思想是要知道即将被删除的元素,以及该元素的上一个节点和下一个节点。把即将被删除的元素的指针成员的值赋给其上一个节点的指针成员,再删除元素,就能完成任务。
比如要删除一个值为n的元素,我们可以如下判断:
node *temp = p->next;
if (temp->value == n){
p->next = temp->next;
delete temp;}
else
p = temp;
如此加上循环就能搜索链表中符合要求的元素并删除。
如有特定的应用问题需要编程,或者需要更详细的解答,可联系我。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯