Advertisement
Guest User

Untitled

a guest
Jul 23rd, 2019
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.62 KB | None | 0 0
  1. class Node
  2. attr_accessor :value, :nextNode
  3.  
  4. def initialize(value, nextNode=nil)
  5. @value = value
  6. @nextNode = nextNode
  7. end
  8. end
  9.  
  10. def print_value(list_node)
  11. if list_node
  12. print "#{list_node.value} -->"
  13. print_value(list_node.nextNode)
  14. else
  15. print "nil\n"
  16. return
  17. end
  18. end
  19.  
  20. def reverse_list(list, last=nil)
  21. if list
  22. nextNode = list.nextNode
  23. list.nextNode = last
  24. reverse_list(nextNode, list)
  25. end
  26. end
  27.  
  28.  
  29. head = Node.new(1)
  30. node = Node.new(7, head)
  31. node1 = Node.new(38, node)
  32. node2 = Node.new(54, node1)
  33.  
  34.  
  35. print_value(node2)
  36.  
  37. puts "------"
  38.  
  39. revlist = reverse_list(node2)
  40.  
  41. print_value(head)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement