单链表的指针域为'next',其头结点由指针'head'指向,则把指针'p'指向的结点链接到头结点之后的语句序列为( )。

A. 'p.next=head.next; head.next=p'

B. 'head.next=p; p.next=head.next;'

C. 'head.next = p.next; p= head.next'

D. 'p.next=head; head=p'

正确答案: A

解析:

  • 选项A: 首先将'p'的'next'指向'head'的'next',即'p'指向的结点指向原来头结点的下一个结点;接着将'head'的'next'指向'p',即头结点的下一个结点指向'p'指向的结点。这样就完成了将'p'指向的结点插入到头结点之后的操作。

  • 选项B: 首先将'head'的'next'指向'p',即头结点的下一个结点指向'p'指向的结点;接着将'p'的'next'指向'head'的'next',即'p'指向的结点指向原来头结点的下一个结点。这个操作实际上是将'p'指向的结点插入到头结点之前,而不是之后。

  • 选项C: 该选项错误,因为将'head.next'指向'p.next'后,'p.next'指向的结点成为了头结点的下一个结点,但原先的'p.next'被丢弃,导致链表断裂。

  • 选项D: 该选项错误,因为将'p.next'指向'head'后,'p'指向的结点成为了新的头结点,而原来的头结点成为了'p'指向的结点的下一个结点,导致链表的顺序被打乱。

总结: 选项A是正确的,因为它正确地将'p'指向的结点插入到头结点之后,并保证了链表的完整性。

单链表插入头结点后的指针操作

原文地址: http://www.cveoy.top/t/topic/pb4B 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录