Golang | Leetcode Golang题解之第92题反转链表II

题目:

题解:

Go 复制代码
func reverseBetween(head *ListNode, left, right int) *ListNode {
    // 设置 dummyNode 是这一类问题的一般做法
    dummyNode := &ListNode{Val: -1}
    dummyNode.Next = head
    pre := dummyNode
    for i := 0; i < left-1; i++ {
        pre = pre.Next
    }
    cur := pre.Next
    for i := 0; i < right-left; i++ {
        next := cur.Next
        cur.Next = next.Next
        next.Next = pre.Next
        pre.Next = next
    }
    return dummyNode.Next
}
相关推荐
故事和你917 分钟前
洛谷-算法1-7-搜索2
数据结构·c++·算法·leetcode·深度优先·动态规划·图论
YuanDaima20481 小时前
双指针基础原理与题目说明
数据结构·人工智能·python·算法·leetcode·手撕代码
止语Lab2 小时前
Go 内存管理优化:内联是逃逸分析的隐藏杠杆
golang
绿豆人2 小时前
Go设计模式学习
学习·设计模式·golang
.柒宇.3 小时前
力扣hot100之最大子数组和(Java版)
数据结构·算法·leetcode
6Hzlia3 小时前
【Hot 100 刷题计划】 LeetCode 131. 分割回文串 | C++ 回溯算法基础切割法
c++·算法·leetcode
美式请加冰3 小时前
子序列问题
数据结构·算法·leetcode
大鹏说大话3 小时前
Go语言Channel并发编程实战:从基础通信到高级模式
开发语言·后端·golang
XMYX-04 小时前
10 - Go 指针:从入门到避坑
开发语言·golang
6Hzlia4 小时前
【Hot 100 刷题计划】 LeetCode 1143. 最长公共子序列 | C++ 二维DP 与 哨兵技巧
c++·算法·leetcode