void Reverse(list l) {
Node* p = new Node{ 0,nullptr };
Node* q = new Node{ 0,nullptr };
p = l->next;
l->next = NULL; //将头结点断开,不再指向顺序的链表
//运用前插法逆序,将第一个结点置为最后一位,后面结点依次插在前面
while (p != NULL)
{
q = p;
p = p->next;
q->next = l->next; //将q结点插入首元结点的前面
l->next = q; //将头结点指向q结点
}
}
单链表逆序(前插法)
最新推荐文章于 2024-04-11 23:00:35 发布