feat: monday
This commit is contained in:
27
pkg/remove_nth_node_from_end_of_list/main.go
Normal file
27
pkg/remove_nth_node_from_end_of_list/main.go
Normal file
@@ -0,0 +1,27 @@
|
||||
package removenthnodefromendoflist
|
||||
|
||||
type ListNode struct {
|
||||
Val int
|
||||
Next *ListNode
|
||||
}
|
||||
|
||||
func RemoveNthFromEnd(head *ListNode, n int) *ListNode {
|
||||
nodes := []*ListNode{}
|
||||
|
||||
for head != nil {
|
||||
nodes = append(nodes, head)
|
||||
head = head.Next
|
||||
}
|
||||
|
||||
if n == len(nodes) {
|
||||
return nodes[0].Next
|
||||
}
|
||||
|
||||
if n == 1 {
|
||||
nodes[len(nodes)-2].Next = nil
|
||||
return nodes[0]
|
||||
}
|
||||
|
||||
nodes[len(nodes)-(n+1)].Next = nodes[len(nodes)-(n-1)]
|
||||
return nodes[0]
|
||||
}
|
||||
Reference in New Issue
Block a user