coisini002 2023-02-23 15:58 采纳率: 51.3%
浏览 19
已结题

删除p所指的结点时需修改指针

img

2、 在双向链表存储结构中,删除p所指的结点时需修改指针
这两个双链表的操作可以画个图吗,总感觉有点不对劲,

  • 写回答

2条回答 默认 最新

  • boonion 2023-02-23 16:39
    关注

    你把可以把它理解为牵着狗的一条链子,然后你把中间某个链扣去掉,然后再接回链子。
    就是你要删掉P点 ,那么P点的前一个节点,指向下一个节点的指针是不是要指向P 点的下一个节点呢

    p的前一个节点q <--- p ---> p的后一个节点b

    就是 p->rlink 指针是指 q节点
    就是 p->link 指针是指 b节点

    好啦,现在前后节点都找到了 q b , 我们把它们链接起来

    就是 q->link 原来p的前一个节点的link指针就指向 b 了 这里就是 (p->rlink)->link
    就是 b->rlink 原来p的后一个节点的rlink指针就指向 p 了 这里就是 (p->link)->rlink

    所以

    q = p->rlink;
    b= p->link;
    
    则链接有:
    q->link = b;
    b->rlink= q;
    
    把关系带入代替q、b
    
    (p->rlink)->link = p->link;
    (p->link)->rlink = p->rlink;
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 3月10日
  • 已采纳回答 3月2日
  • 创建了问题 2月23日

悬赏问题

  • ¥20 画CAD几张图片内容如下1111111111111111111111111111111111111111111
  • ¥15 基于python的电影系统推荐
  • ¥20 springmvc重定向和返回json
  • ¥15 数学建模——参会安排怎么做
  • ¥15 电脑键盘实现触摸功能
  • ¥25 matlab无法将表达式转换为双数组怎么解决?
  • ¥15 单片机汇编语言相关程序
  • ¥20 家用射频美容仪技术规格
  • ¥15 大家帮我看看为什么错了
  • ¥15 unity互动琴弦抖动效果