/**
* struct ListNode {
* int val;
* struct ListNode *next;
* };
*/
/**
* 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
*
*
* @param head ListNode类
* @return ListNode类
*/
struct ListNode* ReverseList(struct ListNode* head ) {
if (head == NULL) {
return NULL;
}
struct ListNode* prev = NULL;//反转链表
struct ListNode* current = head;//当前链表
struct ListNode* next;//下一个节点
while (current!= NULL) {
next = current -> next;//向后遍历使用
current -> next = prev;//把当前链表的前节点放到尾节点去
prev = current;//尾节点向前遍历
current = next;//向后遍历使用
}
return prev;//输出反转链表
}