/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ class Solution { public: ListNode *removeNthFromEnd(ListNode *head, int n) { ListNode * dummyHead = new ListNode(0); dummyHead->next = head; ListNode * pre = dummyHead; ListNode *follower = dummyHead; for(int i = 0; i < n; ++i) { pre = pre->next; } while(pre->next != NULL) { pre = pre->next; follower = follower->next; } ListNode * toDelete = follower->next; follower->next = toDelete->next; toDelete->next = NULL; delete toDelete; return dummyHead->next; } };
4/03/2014
Leetoce -- Remove Nth Node From End of List
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment