Reverse a singly linked list.
反转单链表
C++(9ms): 迭代
1 /** 2 * Definition for singly-linked list. 3 * struct ListNode { 4 * int val; 5 * ListNode *next; 6 * ListNode(int x) : val(x), next(NULL) {} 7 * }; 8 */ 9 class Solution { 10 public: 11 ListNode* reverseList(ListNode* head) { 12 ListNode* pre = NULL ; 13 while(head){ 14 ListNode* temp = head->next ; 15 head->next = pre ; 16 pre = head ; 17 head = temp ; 18 } 19 return pre ; 20 } 21 };