From 47b81f8c681c88a863e81236034296af4a56d16f Mon Sep 17 00:00:00 2001 From: Gleb Koval Date: Fri, 12 Nov 2021 09:41:28 +0000 Subject: [PATCH] remove-linked-list-elements --- remove-linked-list-elements/sol.go | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 remove-linked-list-elements/sol.go diff --git a/remove-linked-list-elements/sol.go b/remove-linked-list-elements/sol.go new file mode 100644 index 0000000..9432524 --- /dev/null +++ b/remove-linked-list-elements/sol.go @@ -0,0 +1,19 @@ +package main + +type ListNode struct { + Val int + Next *ListNode +} + +func removeElements(head *ListNode, val int) *ListNode { + top := &ListNode{Val: 0, Next: head} + last := top + for current := head; current != nil; current = current.Next { + if current.Val == val { + last.Next = current.Next + } else { + last = current + } + } + return top.Next +}