力扣链接:206.反转链表
难度:⭐
解题关键词:链表
、双指针
解题思路:使用双指针,往后移动,后面的指针的 next 指向前面,然后两个指针都往后移动,直到没有节点。
typescript
function reverseList(head: ListNode | null): ListNode | null {
// 慢指针
let pre = null;
// 快指针
let cur = head;
while (cur) {
// 保存快指针后面的元素
const temp = cur.next;
// 将快指针当前指的元素的 next 指向慢指针的元素
cur.next = pre;
// 慢指针向前移动
pre = cur;
// 快指针向前移动
cur = temp;
}
return pre;
}