Sha256: 13d9754acb6778f1f86b9b66a1ae526db9d71b3c3cf23407f0d3fc88a4bdcea9
Contents?: true
Size: 1.27 KB
Versions: 1
Compression:
Stored size: 1.27 KB
Contents
Nodo = Struct.new(:value, :siguiente, :previo) class Nodo include Comparable def <=>(other) value <=> other.value end end class List attr_accessor :head, :tail include Enumerable def initialize(head) @head = head @tail = head end def insert_head(nodo) aux = @head @head.siguiente = nodo @head = @head.siguiente @head.previo = aux end def insert_tail(nodo) aux = @tail @tail = nodo aux.previo = @tail @tail.siguiente = aux end def remove_head aux = @head @head = @head.previo return aux.value #puts @head.value end def print actual = @tail while actual != nil "#{actual.value}" actual = actual.siguiente end end def remove_tail actual = @tail if @tail.siguiente != nil @tail = @tail.siguiente end return actual.value end def each actual = @tail while actual != nil yield actual.value actual = actual.siguiente end end =begin def invert actual = @tail n = Nodo.new(actual.value) aux = List.new(n) actual = actual.siguiente while actual != nil n = Nodo.new(actual.value) aux.insert_tail(n) actual = actual.siguiente end return aux end =end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
exam1-0.0.1 | lib/exam1/linkedlist.rb |