class Solution:
def reverseKGroup(self, head: Optional[ListNode], k: int) -> Optional[ListNode]:
dummy=ListNode(-1,head)
cur=pre=dummy
while pre:
cycle=[]
for i in range(k):
cur=cur.next
if not cur:
return dummy.next
cycle.append(cur)
nxt=cur.next
for x,y in pairwise(cycle):
y.next=x
cycle[0].next=nxt
pre.next=cycle[-1]
pre=cycle[0]
cur=pre
K个一组翻转链表
最新推荐文章于 2024-07-09 23:56:48 发布