реверс связанного списка без temp

Есть ли способ реверсировать связный список без использования переменной temp в 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

7
задан Jerry Coffin 11 January 2012 в 22:21
поделиться