Sha256: 2b91df5af5f2b5a4ca4bb78ea61decb0b22376b389e0cac7fade70e2105e59f6
Contents?: true
Size: 1.31 KB
Versions: 1
Compression:
Stored size: 1.31 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 def invert reverse_each {|x|} 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~ |