LeetCode 92.反转链表II

题目

给你单链表的头指针 head 和两个整数 leftright ,其中 left <= right 。请你反转从位置 left 到位置 right 的链表节点,返回 反转后的链表

方法:灵神 反转链表

代码:

java 复制代码
class Solution {
    public ListNode reverseBetween(ListNode head, int left, int right) {
        ListNode dummy = new ListNode(0, head), p0 = dummy;
        int n = left - 1;
        while (n-- > 0) {
            p0 = p0.next; // p0 保存开始翻转的前一个节点,后面操作需要用到
        }
        ListNode pre = null, cur = p0.next;
        for (int i = 0; i < (right - left + 1); i++) {
            ListNode next = cur.next;
            cur.next = pre;
            pre = cur;
            cur = next;
        }
        p0.next.next = cur;
        p0.next = pre;
        return dummy.next;
    }
}
相关推荐
( •̀∀•́ )9201 小时前
高性能拖拽排序
java·开发语言·算法
Ayanami_Reii1 小时前
进阶数据结构应用-区间最大公约数
开发语言·数据结构·算法·线段树·差分·树状数组·fenwick tree
在人间负债1 小时前
昇腾 RAG SDK 从入门到实战:技术解析与部署实操
后端·算法
大千AI助手1 小时前
多维空间的高效导航者:KD树算法深度解析
数据结构·人工智能·算法·机器学习·大千ai助手·kd tree·kd树
凋零蓝玫瑰1 小时前
几何:数学世界的空间密码
人工智能·算法·机器学习
LDG_AGI1 小时前
【推荐系统】深度学习训练框架(九):推荐系统与LLM在Dataset、Tokenizer阶段的异同
人工智能·深度学习·算法·机器学习·推荐算法
爪哇部落算法小助手2 小时前
每日两题day61
数据结构·c++·算法
Swift社区2 小时前
LeetCode 439 - 三元表达式解析器
算法·leetcode·ssh
小殊小殊2 小时前
重磅!DeepSeek发布V3.2系列模型!
论文阅读·人工智能·算法
裤裤兔2 小时前
利用matlab进行FDR校正的实现方式
数据结构·算法·matlab·多重比较矫正·校正·fdr