C语言 大一简单题目 链表 求解答

互换的思路是什么?
->是什么意思?

【正确答案】A

"互换"就是说,之前的链表为head——p——q——……,互换后变为head——q——p-——……
【注意】互换过程中原链表的结点信息不能丢!!!

->是结构体指针用来取起所指向结构体的分量(的值),指向结构体内的分量 ,例如:
p->key,就是取得的结构体内部的key;

具体操作:(顺序不能变!!!!否则链表信息容易丢失)
1、head->next=q;
2、p->next=q->next;
3、q->next=p

选项B、C、D都丢失了原链表中q以后的所有结点的信息,所以错误。追问

额(⊙o⊙)… 链表的互换是把指针指向的下一个结点变了,是这个意思么?

追答

题目中的意思应该是:原链表中结点p和结点q的位置互换。

就是:原链表为head——p——q——……(注意省略号这里还有结点!!!!不能丢!!!!!),互换后变为head——q——p-——……

但互换过程中原链表的其他结点信息不能丢!!!

温馨提示:答案为网友推荐,仅供参考
相似回答