📜  资质| GATE CS 1998 |第75章

📅  最后修改于: 2021-06-28 20:09:55             🧑  作者: Mango

p为单个链接列表中的指针,如图所示。
单链表
以下赋值语句可以实现什么?

q: = p → next
p → next:= q → next 
q → next:=(q → next) → next 
(p → next) → next:= q

回答:
说明:最初,p指向i,q指向i + 1。

  1. p-> next:= q-> next:i下一个指向i + 2
  2. q->下一个:=(q-> next)?下一个:i + 1下一个指向i + 3
  3. (p-> next)-> next:= q:i + 2下一个指向i + 1

最终推导i-> i + 2-> i + 1-> i + 3。

因此,它将交换链表中p旁边的两个节点。

这个问题的测验