早教吧作业答案频道 -->其他-->
数据结构问题,不懂啊,兄弟已知L是带表头结点的非空单链表,且P结点既不是首元结点,也不是尾元结点,则删除P结点的直接前驱结点的语句序列是:Q=P;P=L;while(p->next->next!=Q)p=p->next;p->next=p->next->
题目详情
数据结构问题,不懂啊,兄弟
已知L是带表头结点的非空单链表,且P结点既不是首元结点,也不是尾元结点,
则删除P结点的直接前驱结点的语句序列是:
Q=P;
P=L;
while(p->next->next!=Q) p=p->next;
p->next=p->next->next;
free(Q);
一点不懂,分别说一下Q=P P=L……的作用,数据新手,一定采纳的,
已知L是带表头结点的非空单链表,且P结点既不是首元结点,也不是尾元结点,
则删除P结点的直接前驱结点的语句序列是:
Q=P;
P=L;
while(p->next->next!=Q) p=p->next;
p->next=p->next->next;
free(Q);
一点不懂,分别说一下Q=P P=L……的作用,数据新手,一定采纳的,
▼优质解答
答案和解析
Q=P 就是让Q指向节点P,也就是要删除的节点.
P=L 就是让P指向链表的第一个节点.
后面的循环的作用是找到要删除的节点的前一个节点,然后让要删除的节点(现在是Q指向它)的前一个节点的指针直接指向要删节点的后一个节点(p->next=p->next->next;),相当于从链表里面移除Q.
最后删除Q(free(Q);)
P=L 就是让P指向链表的第一个节点.
后面的循环的作用是找到要删除的节点的前一个节点,然后让要删除的节点(现在是Q指向它)的前一个节点的指针直接指向要删节点的后一个节点(p->next=p->next->next;),相当于从链表里面移除Q.
最后删除Q(free(Q);)
看了 数据结构问题,不懂啊,兄弟已...的网友还看了以下:
写出下列算法的功能LinkListdemo(LinkListL){ListNode*q,*p;If 2020-05-17 …
数据结构的题目,对单链表中的元素按插入排序法排序的算法如下,其中L为链表头节点指针.请填空完成其功 2020-05-17 …
已知集合A={a1,a2,a3,…,an},其中ai∈R(1≤i≤n,n>2),l(A)表示ai+ 2020-06-12 …
数据结构试卷三.阅读下面的算法(10分)LinkListmynote(LinkListL){//L 2020-06-12 …
FORTRAN求均布荷载Q和跨中集中力Fp作用下跨多为L的简支梁,最大弯矩和最大挠度?情帮忙看一下 2020-07-11 …
数据结构问题,不懂啊,兄弟已知L是带表头结点的非空单链表,且P结点既不是首元结点,也不是尾元结点, 2020-07-14 …
推断题:现有如下反应(反应条件均不给),推断物质⑴A→B+C+D⑵C+E→C+F+D⑶D+G→H⑷ 2020-07-30 …
一根金属棒在0度时的长度是q米,温度每升高1度c,它就伸出P米.当温庋归t庋c时,金属棒的长度L可用 2020-11-03 …
一根金属棒在0°C时的长度是q米,温度每升高1°C,它就伸长p米.当温度为t°C时,金属棒的长度L可 2020-11-03 …
已知生产函数为(1)Q=5L⅓K⅔(2)Q=KL/(K+L)(3)Q=kL2(4)Q=min{3L, 2020-11-30 …