数据结构中,单链表p=L与p=L->next有什么区别?p->next=s与p->next=s->

数据结构中,单链表p=L与p=L->next有什么区别?p->next=s与p->next=s->next有什么区别?

L在数据结构中一般是作为链表头节点的指针,p=L,将P指针也指向头节点。
L->next有两层含义,可以表示L的后继节点指针,又可表示L的指针域,(补充:链表每个节点分为数据域和指针域,(单链表的指针域只有后继指针域,双链表的指针域分为前趋指针域和后继指针域))。第一,当它在等号右边时(即X = L->next形式)一般是指将X指针指向头节点L的后一个节点也就是链表的第一个数据节点;第二,当它在等号左边的时候(即L->next = X),表示将X的值当做地址,写入到L的后继指针域L->next当中,相当于头节点L的后面链接一个数据节点。基础概念理解后,对于p->next=s与p->next=s->next就好理解了,p->next=s:将指针变量s的值写入p的后继指针域,相当于p数据节点后又链接一个指针s指向数据节点,p->next=s->next:将s节点后接的节点的地址写入到p节点的后继指针域,相当于p节点后接s的后接节点。中间逻辑建议画图理一遍,理顺了以后再见到就能很快看明白的。
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-10-15
p和L都是数据结构对象吗 p=L是把数据结构L的每个变量的值赋给p 另个是把L里的next变量的值赋给p 第二种好像错的吧。第二个第一种是把s的首地址赋给p的next变量 第二种是把s的next值赋给p的next本回答被网友采纳
第2个回答  2014-10-16
L->next是L后的下一个数据追答

p->next=s->next. 是删除了s

相似回答