From 0c5444e63a2fa418c40818cbd6e7152e2a34beac Mon Sep 17 00:00:00 2001 From: "M.V. Hutz" Date: Sat, 17 Jan 2026 13:39:20 -0500 Subject: [PATCH] feat: saturday --- pkg/linked_list_cycle/main.go | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 pkg/linked_list_cycle/main.go diff --git a/pkg/linked_list_cycle/main.go b/pkg/linked_list_cycle/main.go new file mode 100644 index 0000000..67bd42d --- /dev/null +++ b/pkg/linked_list_cycle/main.go @@ -0,0 +1,28 @@ +package linked_list_cycle + +type ListNode struct { + Val int + Next *ListNode +} + +func succeed(n *ListNode) *ListNode { + if n == nil { + return n + } else { + return n.Next + } +} + +func HasCycle(head *ListNode) bool { + one, two := head, succeed(head) + + for one != nil && two != nil { + if one == two { + return true + } + + one, two = succeed(one), succeed(succeed(two)) + } + + return false +}