class Lista
Attributes
cabeza[RW]
cola[RW]
nodo_actual[RW]
Public Class Methods
new(cabeza,cola)
click to toggle source
# File lib/alimentos/lista.rb, line 9 def initialize(cabeza,cola) @cabeza = cabeza @cola = cola end
Public Instance Methods
each() { |value| ... }
click to toggle source
# File lib/alimentos/lista.rb, line 51 def each while @cabeza != @cola yield @cabeza.value @cabeza=@cabeza.prev end if @cabeza == @cola if @cabeza == nil nil else yield @cola.value end end end
extraer_inicio()
click to toggle source
eliminar el nodo y cambiar los valores al nodo anterior
# File lib/alimentos/lista.rb, line 39 def extraer_inicio() @cola=@cola.next end
extrar_final()
click to toggle source
# File lib/alimentos/lista.rb, line 43 def extrar_final() @cabeza = @cabeza.prev end
insertar(x)
click to toggle source
# File lib/alimentos/lista.rb, line 14 def insertar(x) node = Nodo.new(x,nil,nil) if @cabeza==nil && @cola==nil node.prev = @cola node.next = @cabeza @nodo_actual = node @cabeza = node @cola = node else node.prev = @cabeza node.next = nil @nodo_actual = node @cabeza.next = node @cabeza = node end end
insertar_varios(nodos)
click to toggle source
# File lib/alimentos/lista.rb, line 32 def insertar_varios(nodos) nodos.each do |nd| insertar(nd) end end
to_s()
click to toggle source
# File lib/alimentos/lista.rb, line 47 def to_s @cabeza.to_s end