单链表的逆置,帮我解释一下这个算法,void reverse (LinkList &L) //单链表的逆置{\x05LinkList a,b,c;a=L;b=L->next ;\x05while (b->next =NULL)\x05{\x05\x05c=b->next ;\x05\x05b->next =a;\x05\x05a=b;\x05\x05b=c;\x05}\x05b->next =a;\x05L-
来源:学生作业帮助网 编辑:作业帮 时间:2024/08/31 09:25:28
![单链表的逆置,帮我解释一下这个算法,void reverse (LinkList &L) //单链表的逆置{\x05LinkList a,b,c;a=L;b=L->next ;\x05while (b->next =NULL)\x05{\x05\x05c=b->next ;\x05\x05b->next =a;\x05\x05a=b;\x05\x05b=c;\x05}\x05b->next =a;\x05L-](/uploads/image/z/13895015-23-5.jpg?t=%E5%8D%95%E9%93%BE%E8%A1%A8%E7%9A%84%E9%80%86%E7%BD%AE%2C%E5%B8%AE%E6%88%91%E8%A7%A3%E9%87%8A%E4%B8%80%E4%B8%8B%E8%BF%99%E4%B8%AA%E7%AE%97%E6%B3%95%2Cvoid+reverse+%28LinkList+%26L%29+%2F%2F%E5%8D%95%E9%93%BE%E8%A1%A8%E7%9A%84%E9%80%86%E7%BD%AE%7B%5Cx05LinkList+a%2Cb%2Cc%3Ba%3DL%3Bb%3DL-%3Enext+%3B%5Cx05while+%28b-%3Enext+%3DNULL%29%5Cx05%7B%5Cx05%5Cx05c%3Db-%3Enext+%3B%5Cx05%5Cx05b-%3Enext+%3Da%3B%5Cx05%5Cx05a%3Db%3B%5Cx05%5Cx05b%3Dc%3B%5Cx05%7D%5Cx05b-%3Enext+%3Da%3B%5Cx05L-)
单链表的逆置,帮我解释一下这个算法,void reverse (LinkList &L) //单链表的逆置{\x05LinkList a,b,c;a=L;b=L->next ;\x05while (b->next =NULL)\x05{\x05\x05c=b->next ;\x05\x05b->next =a;\x05\x05a=b;\x05\x05b=c;\x05}\x05b->next =a;\x05L-
单链表的逆置,帮我解释一下这个算法,
void reverse (LinkList &L) //单链表的逆置
{
\x05LinkList a,b,c;
a=L;b=L->next ;
\x05while (b->next =NULL)
\x05{
\x05\x05c=b->next ;
\x05\x05b->next =a;
\x05\x05a=b;
\x05\x05b=c;
\x05}
\x05b->next =a;
\x05L->next ->next =NULL;
\x05L->next=b;
} 看不懂
单链表的逆置,帮我解释一下这个算法,void reverse (LinkList &L) //单链表的逆置{\x05LinkList a,b,c;a=L;b=L->next ;\x05while (b->next =NULL)\x05{\x05\x05c=b->next ;\x05\x05b->next =a;\x05\x05a=b;\x05\x05b=c;\x05}\x05b->next =a;\x05L-
void reverse (LinkList &L) //单链表的逆置
{
\x09LinkList a,b,c;
a=L;b=L->next ; // L为头结点
\x09while (b->next !=NULL) // 主要思想就在这了,从第一个结点开始,只要
\x09{ 它的下一个结点不为NULL,则将 ->next反
\x09\x09c=b->next ; 向,先将->next保存,再反指
\x09\x09b->next =a;
\x09\x09a=b; // 这两名循环上面
\x09\x09b=c;
\x09}
\x09b->next =a; // ->next为空的话,由于后面没了,直接反向
\x09L->next ->next =NULL; // L->next此时指向的是反向前的第一个结点,反向后这个结点改为指向 NULL, 即收尾
\x09L->next=b; //头结点指向第一个结点
}
//描述的可能不是很清楚,你画个链表图的话应该有助于理解