Golang | Leetcode Golang题解之第147题对链表进行插入排序

题目:

题解:

Go 复制代码
func insertionSortList(head *ListNode) *ListNode {
    if head == nil {
        return nil
    }
    dummyHead := &ListNode{Next: head}
    lastSorted, curr := head, head.Next
    for curr != nil {
        if lastSorted.Val <= curr.Val {
            lastSorted = lastSorted.Next
        } else {
            prev := dummyHead
            for prev.Next.Val <= curr.Val {
                prev = prev.Next
            }
            lastSorted.Next = curr.Next
            curr.Next = prev.Next
            prev.Next = curr
        }
        curr = lastSorted.Next
    }
    return dummyHead.Next
}
相关推荐
2501_941822752 分钟前
从限流降载到全链路流控的互联网工程语法实践与多语言探索
leetcode·模拟退火算法
炽烈小老头2 分钟前
【每天学习一点算法 2026/01/06】最小栈
学习·算法·leetcode
六毛的毛22 分钟前
填充每个节点的下一个右侧节点指针
leetcode
Swift社区31 分钟前
LeetCode 467 环绕字符串中唯一的子字符串
算法·leetcode·职场和发展
多米Domi0112 小时前
0x3f 第23天 黑马web (前端三件套,maven,web入门、mysql)黑马反射注解 hot100普通数组
java·python·mysql·算法·leetcode·maven
Swift社区10 小时前
LeetCode 465 最优账单平衡
算法·leetcode·职场和发展
weixin_4450547210 小时前
力扣热题51
c++·python·算法·leetcode
smj2302_7968265214 小时前
解决leetcode第3801题合并有序列表的最小成本
数据结构·python·算法·leetcode
Thetimezipsby14 小时前
Go(GoLang)语言基础、知识速查
开发语言·后端·golang
sin_hielo17 小时前
leetcode 1975
数据结构·算法·leetcode