Interview tearing code (2) - inversion of linked list

listnode reverse(listnode head)
{
if (head == NULL)
return head;
listnode p, q, pre;
p = head->next;
q = NULL;
head->next == NULL;
while (p)
{
pre = p->next;
p->next = q;
q = p;
p = pre;
}
head->next = q;
return head;
}

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=324443869&siteId=291194637