在单链表中,如果已知指针p指向某个节点,要删除p所指向的后继节点,需要执行的操作是?
答案解析
核心考点:链表节点的删除操作。解题思路:要删除p的后继节点,需要将p的next指针指向后继节点的后继节点。选项A:将p的next指针指向后继节点的后继节点,实现删除后继节点;选项B:p直接指向后继的后继节点,导致原后继节点无法访问,无法删除,且改变了p的指向;选项C:p的next指向自身,形成循环链表;选项D:p指向后继节点,无法删除后继节点。易错点:混淆指针的赋值和指向,注意链表删除操作的本质是修改指针指向。正确答案的关键依据:修改p的next指针,跳过后继节点。
核心考点说明:考察链表删除的基本操作。
解题思路分析:删除单链表中的一个节点,本质是修改前一个节点的next指针,使其指向被删除节点的下一个节点。
选项分析:
A. 正确。p->next指向p的后继的后继,跳过了p的后继节点,将其删除。
B. 错误。p直接指向了p后继的后继,无法删除p的后继节点。
C. 错误。p的next指针指向了自己,导致链表出现环。
D. 错误。p指向了自己的后继,没有进行删除操作。
易错点提醒:删除链表节点的本质是修改指针的指向,需要找到被删除节点的前驱节点。本题考查的是已知当前节点,删除后继节点的操作。
正确答案:A