Golang | Leetcode Golang题解之第61题旋转链表

题目:

题解:

Go 复制代码
func rotateRight(head *ListNode, k int) *ListNode {
    if k == 0 || head == nil || head.Next == nil {
        return head
    }
    n := 1
    iter := head
    for iter.Next != nil {
        iter = iter.Next
        n++
    }
    add := n - k%n
    if add == n {
        return head
    }
    iter.Next = head
    for add > 0 {
        iter = iter.Next
        add--
    }
    ret := iter.Next
    iter.Next = nil
    return ret
}
相关推荐
脚踏实地的大梦想家21 小时前
【Go】P14 Go语言核心利器:全面解析结构体 (Struct)
开发语言·后端·golang
虚行21 小时前
Go学习资料整理
golang·区块链
QX_hao21 小时前
【Go】--time包的使用
开发语言·后端·golang
咪咪渝粮1 天前
108. 将有序数组转换为二叉搜索树
算法·leetcode
仰泳的熊猫1 天前
LeetCode:1905. 统计子岛屿
数据结构·c++·算法·leetcode
苏琢玉1 天前
想让默认头像不再千篇一律,就顺手复刻了一下 GitHub 的思路
golang
熬了夜的程序员1 天前
【LeetCode】88. 合并两个有序数组
数据结构·算法·leetcode·职场和发展·深度优先
ゞ 正在缓冲99%…1 天前
leetcode2826.将三个组排序
算法·leetcode·动态规划
九江Mgx1 天前
Go语言实现的简易远程传屏工具:让你的屏幕「飞」起来
golang·截图·传屏
九江Mgx2 天前
自由通讯的魔法:Go从零实现UDP/P2P 聊天工具
golang·udp·p2p