怎么判断s->next是后继指针还是结点
时间: 2023-05-13 17:05:51 浏览: 93
判断s->next是后继指针还是结点需要根据具体的数据结构来确定。一般来说,如果s->next指向的是另一个结点的地址,那么s->next就是一个后继指针;如果s->next指向的是某个数据域或者函数指针,那么s->next就是一个结点。具体的判断方法需要根据代码实现来确定。
相关问题
在双向链表存储结构中,删除p所指的结点时须修改指针( )。 A.p->next->prior=p->prior; p->prior->next=p->next; B.p->next=p->next->next; p->next->prior=p; C.p->prior->next=p; p->prior=p->prior->prior; D.p->prior=p->next->next; p->next=p->prior->prior;
正确答案是 A.p->next->prior=p->prior; p->prior->next=p->next;
在双向链表中,每个结点都有一个前驱指针 prior 和一个后继指针 next,指向其前驱结点和后继结点。删除某个结点 p 时,需要将其前驱结点的后继指针指向其后继结点,同时将其后继结点的前驱指针指向其前驱结点,即 p->next->prior=p->prior; p->prior->next=p->next; 这样才能保证链表的连续性。选项 B 是删除 p 结点后将其后继结点的前驱指针指向 p 结点的后继结点,而不是指向 p 结点的前驱结点;选项 C 和 D 都存在指针越界的情况,因此都不正确。
假设单链表结点结构为(data,next),删除指针 p 所指结点的后继结点 q 的语句序列是 ( )。 A.p->next=q->next; free(q); B.p->next=q; free(q); C.free(q);p->next=q->next; D.free(q);p->next=q;
删除指针 p 所指结点的后继结点 q 的语句序列应该是 A.p->next=q->next; free(q);。这是因为:
- 首先需要将 p 的指针域指向 q 的后继结点,即 p->next=q->next;
- 然后需要释放 q 所指结点的内存空间,即 free(q)。
其他选项的语句序列有误:
- B.p->next=q; 会将 p 的指针域指向 q,而不是 q 的后继结点;
- C.free(q);p->next=q->next; 会先释放 q 所指结点的内存空间,再将 p 的指针域指向 q 的后继结点,这样就会导致 q 所指结点的内存泄漏;
- D.free(q);p->next=q; 会先释放 q 所指结点的内存空间,再将 p 的指针域指向 q,这样就会出现指针悬挂的情况。
相关推荐
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)