LeetCode206-反转链表

题目

给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。

代码

java 复制代码
/**
 * Definition for singly-linked list.
 * public class ListNode {
 *     int val;
 *     ListNode next;
 *     ListNode() {}
 *     ListNode(int val) { this.val = val; }
 *     ListNode(int val, ListNode next) { this.val = val; this.next = next; }
 * }im 
 */
class Solution {
    public ListNode reverseList(ListNode head) {
        ListNode cur = head;
        ListNode pre = null;
        while(cur != null) {
            ListNode next = cur.next;
            cur.next = pre;
            pre = cur;
            cur = next;
        }
        return pre;
    }
}

结论

  • 虚拟出一个pre节点很关键
  • 注意停止条件
  • 注意交换引用的逻辑
相关推荐
勇闯逆流河23 分钟前
【数据结构】堆
c语言·数据结构·算法
pystraf1 小时前
LG P9844 [ICPC 2021 Nanjing R] Paimon Segment Tree Solution
数据结构·c++·算法·线段树·洛谷
Nobkins3 小时前
2021ICPC四川省赛个人补题ABDHKLM
开发语言·数据结构·c++·算法·图论
易只轻松熊5 小时前
C++(23):容器类<vector>
开发语言·数据结构·c++
小学生的信奥之路5 小时前
力扣1991:找到数组的中间位置(前缀和)
数据结构·算法·leetcode·前缀和·数组
এ᭄画画的北北5 小时前
力扣-102.二叉树的层序遍历
数据结构·算法·leetcode
ccLianLian5 小时前
数据结构·字典树
数据结构·算法
Lu Yao_5 小时前
用golang实现二叉搜索树(BST)
开发语言·数据结构·golang
JeffersonZU7 小时前
【数据结构】2-3-1单链表的定义
数据结构·链表
JeffersonZU7 小时前
【数据结构】1-4算法的空间复杂度
c语言·数据结构·算法