方法 1:递归
思路
- 递归获取子链表的反转之后的头节点,然后将当前层的两个节点反转即可。
代码
|
|
复杂度
- 时间复杂度:$O(n)$。
- 空间复杂度:$O(n)$。递归过程中的栈空间的使用。
方法 2:迭代
思路
- 用双指针
cur
和pre
一边走一边转换即可,cur 走到 None 的时候,pre 就走到最后一个节点了,返回即可。
代码
|
|
复杂度
- 时间复杂度:$O(n)$。
- 空间复杂度:$O(1)$。
|
|
cur
和 pre
一边走一边转换即可,cur 走到 None 的时候,pre 就走到最后一个节点了,返回即可。
|
|