/* 将单链表反序 */
node *reverse_iterative(node *L)
{
if (!L)
return NULL;
node *head, *tail, *p;
head = tail = L;
p = L->next;
head->next = NULL;
while (p)
{
head = p;
p = p->next;
head->next = tail;
tail = head;
}
return head;
}
/* 将单链表反序递归版本 */
void reverse(node * &L)
{
if (!L || !L->next) return;
node *rest = L->next;
reverse(rest);
L->next->next = L;
L->next = NULL;
L = rest;
}
单链表反序递归版本和迭代版本
最新推荐文章于 2022-11-14 20:30:08 发布