有没有什么办法可以反转链接列表,而不使用C中的临时变量? 在此先感谢。链接列表反向没有临时
著名的办法:
Element *reverse(Element *head)
{
Element *previous = NULL;
while (head != NULL) {
// Keep next node since we trash
// the next pointer.
Element *next = head->next;
// Switch the next pointer
// to point backwards.
head->next = previous;
// Move both pointers forward.
previous = head;
head = next;
}
return previous;
}
使用临时变量
SAURABH
如何递归呢? – 2012-01-11 22:24:46
递归是一种骗局,因为参数本质上是临时变量。 – 2012-01-11 22:35:50
同意,但这通常是像这个一样的语义呃问题。 – 2012-01-11 22:37:12