要求
代码
/*** struct ListNode {* int val;* struct ListNode *next;* };*/
/*** 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可*** @param head ListNode类* @return ListNode类*/
struct ListNode* ReverseList(struct ListNode* head ) {// write code herestruct ListNode*preNode=NULL;struct ListNode*curNode=NULL;struct ListNode*nextNode=NULL;curNode=head;while (curNode!=NULL) {/*1.下一个节点完成链接2.当前节点的下一个链接指向pNode(反转)*/nextNode=curNode->next;curNode->next=preNode;/* 3.上一个节点移动到当前节点4.当前节点移向下一个*/preNode=curNode;curNode=nextNode;}head=preNode;//最后p节点指向首节点,而c\n节点指向NULLreturn head;//返回首节点
}