lc-go/solutions/0/q19/solution.go

27 lines
471 B
Go

// Package q19 implements a solution for https://leetcode.com/problems/remove-nth-node-from-end-of-list/
package q19
type ListNode struct {
Val int
Next *ListNode
}
func removeNthFromEnd(head *ListNode, n int) *ListNode {
stub := &ListNode{Next: head}
probe := stub
for range n {
probe = probe.Next
}
prev := stub
for probe.Next != nil {
probe = probe.Next
prev = prev.Next
}
prev.Next = prev.Next.Next
return stub.Next
}
var _ = removeNthFromEnd