题目来源:LeetCode148:排序链表
问题抽象: 给定一个单链表的头节点 head,要求使用 时间复杂度 O(n log n) 和 空间复杂度 O(1) 的算法对链表进行 升序排序(节点值从小到大),并返回排序后的头节点,满足以下核心需求:
-
排序要求:
- 输出链表必须为 严格升序(
head.val ≤ head.next.val ≤ ...); - 禁止创建新节点(仅通过修改节点指针实现原地排序)。
- 输出链表必须为 严格升序(
-
算法约束:
- 必须使用 自底向上的归并排序
问题抽象: 给定一个单链表的头节点 head,要求使用 时间复杂度 O(n log n) 和 空间复杂度 O(1) 的算法对链表进行 升序排序(节点值从小到大),并返回排序后的头节点,满足以下核心需求:
排序要求:
head.val ≤ head.next.val ≤ ...);算法约束:

被折叠的 条评论
为什么被折叠?