package main import ( . "nc_tools" ) /* * type ListNode struct{ * Val int * Next *ListNode * } */ /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param head ListNode类 * @param n int整型 * @return ListNode类 */ func moveNthToEnd( head *ListNode , n int ) *ListNode { // write code here l, r := head, head for i := 0; i < n-1; i ++ { r = r.Next } var prev *ListNode for r.Next != nil { prev = l l = l.Next r = r.Next } if prev != nil { r.Next = l prev.Next = l.Next l.Next = nil } else { r.Next = l head = l.Next l.Next = nil } return head }