永发信息网

添加双向链表的节点?

答案:2  悬赏:80  手机版
解决时间 2021-04-05 02:16
  • 提问者网友:城市野鹿
  • 2021-04-04 17:23
end.next =n;
n.before=end;
end=end.next;
end.before =n.before;
这段代码啥意思???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
最佳答案
  • 五星知识达人网友:一叶十三刺
  • 2021-04-04 19:01
end 表示当前链表末结点
end.next =n; // 将n链接到当前链表尾部
n.before=end; // 原来链表的末结点是n的前结点
end=end.next; // end.next是n,即当前链表末结点
end.before =n.before; // 给末结点的前结点赋值
全部回答
  • 1楼网友:迟山
  • 2021-04-04 20:25
你这样是删除了p前面的节点,应该是 q = p->before; q->next = p->next; p->next->before = q; //假设p后面的节点不是null,至此p节点从链表中删除 free(p); //释放p节点内存 p = q->next; //如果希望继续利用p向后遍历,可以这样做
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯