反转链表 II。反转从位置 m 到 n 的链表。请使用一趟扫描完成反转。
说明: 1 ≤ m ≤ n ≤ 链表长度。
示例:
1 |
|
1 |
|
思路一
首先定位第 \(m\) 和 \(n\) 个节点,然后完成下面的操作即可:
1 |
|
时间复杂度 \(O(n)\)。
1 |
|
思路二
首先定位第 \(m\) 和 \(m-1\) 个节点,然后完成下面的操作即可:
1 |
|
这里与思路一的区别是不用找到第 \(n\) 个结点,省去了一次循环,时间复杂度 \(O(n)\)。
1 |
|
反转链表 II。反转从位置 m 到 n 的链表。请使用一趟扫描完成反转。
说明: 1 ≤ m ≤ n ≤ 链表长度。
示例:
1 |
|
1 |
|
首先定位第 \(m\) 和 \(n\) 个节点,然后完成下面的操作即可:
1 |
|
时间复杂度 \(O(n)\)。
1 |
|
首先定位第 \(m\) 和 \(m-1\) 个节点,然后完成下面的操作即可:
1 |
|
这里与思路一的区别是不用找到第 \(n\) 个结点,省去了一次循环,时间复杂度 \(O(n)\)。
1 |
|
微信打赏
支付宝打赏