LeetCode/rb/linked-list-cycle-ii.rb

28 lines
516 B
Ruby
Raw Normal View History

# Definition for singly-linked list.
# class ListNode
# attr_accessor :val, :next
# def initialize(val)
# @val = val
# @next = nil
# end
# end
# @param {ListNode} head
# @return {ListNode}
require 'set'
def detectCycle(head)
def detectCycleRec(node, seen)
if node == nil then
return node
elsif seen.add?(node) == nil then
return node
end
return detectCycleRec(node.next, seen)
end
detectCycleRec(head, Set.new)
end