From e53fbf0ec6d1ec4f196c69675e55381bce42becd Mon Sep 17 00:00:00 2001 From: "M.V. Hutz" Date: Sun, 18 Jan 2026 14:15:59 -0500 Subject: [PATCH] feat: sunday --- pkg/reorder_list/main.go | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 pkg/reorder_list/main.go diff --git a/pkg/reorder_list/main.go b/pkg/reorder_list/main.go new file mode 100644 index 0000000..3000b68 --- /dev/null +++ b/pkg/reorder_list/main.go @@ -0,0 +1,34 @@ +package reorderlist + +type ListNode struct { + Val int + Next *ListNode +} + +func ReorderList(head *ListNode) { + nodes := []*ListNode{} + for head != nil { + nodes = append(nodes, head) + head = head.Next + } + + start := 0 + end := len(nodes) - 1 + for { + if start == end { + nodes[start].Next = nil + return + } + + nodes[start].Next = nodes[end] + start++ + + if start == end { + nodes[end].Next = nil + return + } + + nodes[end].Next = nodes[start] + end-- + } +}