已知L是带表头结点的非空单链表,且P结点既不是首元结点,也不是尾元结点,试从下列提供的答案中选择合适删除P结点的直接前驱结点的语句序列是_ (10) (12) (8) (3) (14).(3) P->next=P

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/06 01:41:32

已知L是带表头结点的非空单链表,且P结点既不是首元结点,也不是尾元结点,试从下列提供的答案中选择合适删除P结点的直接前驱结点的语句序列是_ (10) (12) (8) (3) (14).(3) P->next=P
已知L是带表头结点的非空单链表,且P结点既不是首元结点,也不是尾元结点,试从下列提供的答案中选择合适
删除P结点的直接前驱结点的语句序列是_ (10) (12) (8) (3) (14).
(3) P->next=P->next->next;
(8) while(P->next->next!=Q) P=P->next;
(10) Q=P;
(12) P=L;
(14) free(Q);
刚初学链表知识不太清楚,希望您能帮帮忙~

已知L是带表头结点的非空单链表,且P结点既不是首元结点,也不是尾元结点,试从下列提供的答案中选择合适删除P结点的直接前驱结点的语句序列是_ (10) (12) (8) (3) (14).(3) P->next=P
(10)先用Q保存结点P的指针
(12)借用P变量来指到表头来准备遍历表L
(8)遍历整个表,直到定位到Q结点的前一个的前一个结点,保存到P
Q=P->next;
(3)连接要删除的结点前后相邻两个结点
(14)此时,Q结点已被孤立,可以安全删除了