AcWing 35. 反转链表-java迭代详细注释
原题链接
简单
作者:
OneDay1
,
2021-03-18 20:13:15
,
所有人可见
,
阅读 277
/**
* Definition for singly-linked list.
* public class ListNode {
* int val;
* ListNode next;
* ListNode(int x) { val = x; }
* }
*/
class Solution {
public ListNode reverseList(ListNode head) {
//如果链表为空 返回头节点
if(head == null || head.next == null) return head;
// 声明一个节点并置为空
ListNode pre = null;
// 保存头节点
ListNode cur = head;
// 如果头节点部位空 循环
while(cur != null){
// 保存后继节点
ListNode next = cur.next;
// 让后面节点指向前面节点
cur.next = pre;
// 移动两个指针
pre = cur;
// cur = cur.next
cur = next;
}
return pre;
}
}