反转链表
力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台
与方法一相比方法二的思路更容易实现
报错原因:head和n3不能为空,为空则不能执行后面的操作
报错原因:listnode*n1,n2,n3;
纠正:listnode *n1,n2,n3;
代码:
/**
* Definition for singly-linked list.
* struct ListNode {
* int val;
* struct ListNode *next;
* };
*/
typedef struct ListNode ListNode;
struct ListNode* reverseList(struct ListNode* head){
if(head==NULL){
return NULL;
}
ListNode*n1,*n2,*n3;
n1=NULL;
n2=head;
n3=head->next;
while(n2){
n2->next=n1;
n1=n2;
n2=n3;
if(n3!=NULL){
n3=n3->next;
}
}
return n1;
}