题解 | #调整牛群顺序#
调整牛群顺序
https://www.nowcoder.com/practice/a1f432134c31416b8b2957e66961b7d4
# class ListNode: # def __init__(self, x): # self.val = x # self.next = None # # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param head ListNode类 # @param n int整型 # @return ListNode类 # class Solution: def moveNthToEnd(self , head: ListNode, n: int) -> ListNode: # write code here res = ListNode(-1) res.next = head pre = res cur = head cnt = 0 length = 0 while cur: length+=1 cur = cur.next cur = head while cur: cnt += 1 if cnt == (length-n+1): tmp = cur.val pre.next = cur.next cur = cur.next else: pre = cur cur = cur.next last = ListNode(tmp) pre.next = last return res.next