class List
Attributes
head[RW]
tail[RW]
Public Class Methods
new(nodes)
click to toggle source
# File lib/lpp_Grupo3/list.rb, line 8 def initialize(nodes) @Node = Struct.new(:value, :siguiente, :anterior) @head = nil @tail = nil @empty=true @first=true @lasteach = nil enqueque(nodes) end
Public Instance Methods
dequeque()
click to toggle source
# File lib/lpp_Grupo3/list.rb, line 29 def dequeque if @head == @tail nodo = @head[:value] @head = nil @tail = nil @empty = true else nodo = @head[:value] @head = @head[:siguiente] @head[:anterior] = nil end nodo end
each() { |lasteach| ... }
click to toggle source
# File lib/lpp_Grupo3/list.rb, line 50 def each @lasteach=nil while @lasteach != @tail if @lasteach==nil @lasteach=@head else @lasteach=@lasteach[:siguiente] end yield @lasteach[:value] end end
enqueque(nodo)
click to toggle source
# File lib/lpp_Grupo3/list.rb, line 42 def enqueque(nodo) insertar(nodo) end
insertar(node)
click to toggle source
# File lib/lpp_Grupo3/list.rb, line 17 def insertar(node) if @empty == true @estenodo = @Node.new(node,nil,nil) @head=@estenodo @tail=@estenodo @empty=false else @estenodo = @Node.new(node,nil,@tail) @tail[:siguiente]=@estenodo @tail = @estenodo end end