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
- def reverse_list(list, previous = nil)
- while list
- old_next = list.next_node
- list.next_node = previous
- previous = list
- list = old_next
- end
- previous
- end
- def print_values(list_node)
- if list_node
- print "#{list_node.value} --> "
- print_values(list_node.next_node)
- else
- print "nil\n"
- end
- end
- end
- node1 = LinkedListNode.new(37)
- node2 = LinkedListNode.new(99, node1)
- node3 = LinkedListNode.new(12, node2)
- revlist = node3.reverse_list(node3)
- node3.print_values(revlist)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement