这个题目很有意思哈,第一反应是s->next=q->next,q->next=s,然后一瞅答案没有,并且还给出了答案是c,我说不能啊,这不p的结点地址丢失了嘛,果断认为题目错了,并且网上找答案,结果折腾一会发现网上答案都是说c,但是都没有具体给出解释,也有稀疏几个人和我的答案一样,后面再瞅了几眼题目,发现了问题所在。我们知道的是p、q都是结构体指针变量,当p、q指向某个结点的时候,意味着结点的首地址赋予了p、q指针变量,也就是说这两个结点的地址是已知的,所以可以q->next=s,s->next=p(当然上面的s->next=q->next,q->next=s也是可以的)。不像之前的只给出的一个结构体指针变量p,然后在其后面后面插入一个新的结点,那就要考虑到断链的情况。
在一个单链表中,已知q所指结点是p所指结点的前驱结点,若在q和p之间插入s结点,则执行( )
最新推荐文章于 2024-05-28 00:40:05 发布