已知单链表头指针位置,已知P指针指向其中某结点,设计算法,删除P指针所指向结点
来源:学生作业帮 编辑:神马作文网作业帮 分类:综合作业 时间:2024/09/30 15:36:49
已知单链表头指针位置,已知P指针指向其中某结点,设计算法,删除P指针所指向结点
前驱结点
前驱结点
假设链表类型为
struct node
{
int data;
struct node *next;
};
node *q = p->next;
p->data = q->data;
p->next = q->next;
free(q);
搞定!
思路是这样的:
我们删除p的下一个节点很容易,删除p所指向的节点很难,我们可以用一个巧妙的方法,把p的下一个节点的内容赋值给p(相当于把p删除了,只是下一个节点是一个多余的节点了),那么我们只要删除下一个节点就可以了,这样就转化成删除p的下一个节点了.
最终的到的链是一样的,只是换个思路想问题.
struct node
{
int data;
struct node *next;
};
node *q = p->next;
p->data = q->data;
p->next = q->next;
free(q);
搞定!
思路是这样的:
我们删除p的下一个节点很容易,删除p所指向的节点很难,我们可以用一个巧妙的方法,把p的下一个节点的内容赋值给p(相当于把p删除了,只是下一个节点是一个多余的节点了),那么我们只要删除下一个节点就可以了,这样就转化成删除p的下一个节点了.
最终的到的链是一样的,只是换个思路想问题.
已知带表头结点的单链表L,指针P指向L链表中的一个结点(非首、尾结点):删除P结点的语句序列是?
已知L 是无表头结点的单链表,且P 是指向表中某个结点的指针,
试写出一个计算链表中结点个数的算法.其中指针p指向该链表的第一个结点
删除一单向链表中P指针所指向结点的后继结点,正确的操作是_______.
P是指向双向链表中某个结点的指针,写出删除P指向结点的前驱结点的语句序列
已知带头结点的单链表L,指针P指向L链表中的一个结点为(非首结点、非尾结点),
已知带表头结点的非空单链表L,指针P指向L链表中的一个结点(非首尾结点),试从下列选项中选择合适的语句序列
一个链表不知道头结点,有一个指针指向其中一个结点,请问如何删除这个指针指向的结点.
数据结构已知指针P指向双向链表中的一个结点(非首结点、非尾结点),则:(1)将结点S插入在P结点的直接
已知指针 p 指向某单链表中的一个结点,则判别该结点有且仅有一个后继结点的条件是什么
设指针p指向单链表中结点A,指针s指向被插入的结点X,则在结点A前面插入结点X是的操作序列为:
已知指针ha和hb分别指向两个单链表的头结点,编写一个算法,将ha和hb连接在一起,即令其中一个表的首结点