Domanda di colloquio di Qualcomm

Reverse a linked list using a single traversal

Risposte di colloquio

Anonimo

11 ago 2010

It is simple. Figure it out.

Anonimo

8 apr 2012

void reverseList(List *head, List *rev) { List *node; // Assuming valid head & rev list entry rev->Next = NULL; while (head->Next) { // remove a node from head list node = head->Next; head->Next = node->Next; // push the node in front of rev list node->Next = rev->Next; rev->Next = node; } if(rev->Next == NULL) rev = head; // no node in head list }