Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class LinkedListNode
- attr_accessor :value, :next_node
- def initialize(value, next_node=nil)
- @value = value
- @next_node = next_node
- end
- end
- def reverse_list(list, previous=nil)
- if list
- next_node = list.next_node
- list.next_node = previous
- reverse_list(next_node, list)
- end
- end
- def print_values(list_node)
- if list_node
- print "#{list_node.value} --> "
- print_values(list_node.next_node)
- else
- print "nil\n"
- return
- end
- end
- tailHead = LinkedListNode.new(37)
- center = LinkedListNode.new(99, tailHead)
- headTail = LinkedListNode.new(12, center)
- print_values(headTail)
- reverse_list(headTail)
- print_values(tailHead)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement