正在载入在线练习界面,本页内容可直接阅读…

AK CSP › NOIP 提高 2010 第一轮真题 › 第 19 题

NOIP 提高 2010 第一轮 第 19 题:双向链表中有两个指针域link和rlink,分别指向该结点的前驱及后继。设p指向

不定项选择 · 线性表、栈与队列 · 答案 B、C、D

题目

双向链表中有两个指针域 llink 和 rlink,分别指向该结点的前驱及后继。设p指向链表中的一个结点,他的左右结点均为非空。现要求删除结点 $p$,则下列语句序列中正确的是(    )。

答案

B、C、D

题解

考点定位

双向链表删除节点后的前驱、后继连接。

解题过程

设p的左邻为L、右邻为R。删除p前,需要令L->rlink=R,R->llink=L。

  • B直接完成这两条赋值。
  • C先令R->llink=L,再通过R->llink访问L并设置L->rlink=R。
  • D先令L->rlink=R,再通过L->rlink访问R并设置R->llink=L。
  • A把R的左链指向R自己、L的右链指向L自己,不能正确连接两邻居。

答案:B、C、D。

易错提醒

复合指针表达式应按前一条赋值后的状态求值。C、D虽然写法不同,最终连接关系都正确。

真题版权归 CCF 所有,本站仅用于非商业教学用途。页面加载后可直接在线作答,作答记录保存在本浏览器或账号中。 京ICP备2026056990号-1 京公网安备11010502062986号