NOTE
反转链表
反转链表的 LeetCode 解题笔记。
这是历史学习笔记,可能存在过时或不完整的理解。
1. 题目描述
反转一个单链表
2. 思路
- 思路一
- 三指针
- prev、current、next
- 只要current不为空,那么一直往下走,每走一步翻转一个
3. 实现
3.1. 三指针
/**
* Definition for singly-linked list.
* type ListNode struct {
* Val int
* Next *ListNode
* }
*/
func reverseList(head *ListNode) *ListNode {
var pre *ListNode
current := head
var next *ListNode
for current != nil {
next = current.Next
current.Next = pre
pre = current
current = next
}
return pre
}
讨论
使用 GitHub 账号参与讨论,评论会保存在 GitHub Issues 中。在 GitHub 查看