defreverseKGroup(self, head, k): """ :type head: ListNode :type k: int :rtype: ListNode """ ifnot head or k == 1: return head pre = ListNode(0) pre.next = head res = cur = nex = tmp = pre count = 0 while(cur.next): count += 1 if count == k: cur = pre.next nex = cur.next for i in range(k-1): tmp = pre.next pre.next = cur.next cur.next = nex.next nex.next = tmp nex = cur.next count = 0 pre = cur cur = cur.next return res.next
近期评论