92. 反转链表 II
https://leetcode-cn.com/problems/reverse-linked-list-ii/
解法一:
一次遍历,先找到翻转处,然后头插。
class Solution:
def reverseBetween(self, head: ListNode, m: int, n: int) -> ListNode:
Head = ListNode(0)
Head.next = head
pre = i = Head
for _ in range(m): #i移动到翻转处
pre = i
i = i.next
#将i之后的n-m-1个结点头插到i之前
j = i.next
for _ in range(n-m):
tmp = j #记录j
j = j.next
tmp.next = pre.next
pre.next = tmp
i.next = j
return Head.next
最后更新于