<pre name="code" class="html">
下面是迭代的方法
/**
* Definition for singly-linked list.
* struct ListNode {
* int val;
* struct ListNode *next;
* };
*/
struct ListNode* reverseList(struct ListNode* head) {
struct ListNode *p = head;
//struct ListNode *k= head;
if(p){
struct ListNode *q = p->next,*k;
while(q){
k = q->next;
q->next = p;
p = q;
q =k;
}
head->next=NULL;
return p;
}
else
return NULL;
}
递归的方法如下