Google interview question

C++ versus Java. Reverse a singly lined list.

Interview Answers

Anonymous

9 Aug 2011

reverse(Node n1, Node n2) { Node newHead; if (n2.next != null) newHead=reverse(n2, n2.next); else newHead = n2; n2.next = n1; }

Anonymous

9 Oct 2011

to J, good stuff. remember to return newHead

Anonymous

10 Dec 2014

Node* reverseList(Node *n1, Node *n2) { Node *newHead; if (n2->next != NULL) newHead = reverseList(n2, n2->next); else newHead = n2; n2->next = n1; n1->next = NULL; return newHead; }