# 力扣143. 重排链表


## 力扣143. Reorder List（重排链表）

给定一个单链表 L 的头节点 head，单链表 L 表示为 L0→L1→...→Ln-1→Ln，请将其重新排列后变为 L0→Ln→L1→Ln-1→L2→Ln-2→...。你不能只是单纯的改变节点内部的值，而是需要实际的节点交换。

示例 1：

![](../posts/01_学习/87_LeetCode/0143_重排链表/img/0143-1-description.png)

```
输入：head = [1,2,3,4]
输出：[1,4,2,3]
解释：...
```

示例 2：

![](../posts/01_学习/87_LeetCode/0143_重排链表/img/0143-2-description.png)

```
输入：head = [1,2,3,4,5]
输出：[1,5,2,4,3]
```

提示：
- 链表的长度范围为 [1, 5*10^4]
- 1 <= node.val <= 1000

