class Lista
CLASE LISTA
Attributes
fin[R]
inicio[R]
Public Class Methods
new()
click to toggle source
FUNCION INITIALIZE
# File lib/dietas/lista.rb, line 12 def initialize() @inicio = nil @fin = nil end
Public Instance Methods
each() { |value| ... }
click to toggle source
METODO EACH
# File lib/dietas/lista.rb, line 92 def each nodo = @inicio while(nodo != nil) yield nodo.value nodo = nodo.next end end
empty()
click to toggle source
EMPTY : COMPUREBA QUE LA LISTA ESTA VACIA
# File lib/dietas/lista.rb, line 18 def empty if (@inicio == nil) return true else return false end end
extraer_f()
click to toggle source
EXTRAER FINAL
# File lib/dietas/lista.rb, line 78 def extraer_f if (empty) puts "lista vacia" return false else aux = @fin @fin = @fin.prev #@fin.next = nil return aux.value end end
extraer_i()
click to toggle source
EXTRAER INICIO
# File lib/dietas/lista.rb, line 63 def extraer_i #extraemos del principio if (empty) puts "lista vacia" return false else aux = @inicio @inicio = @inicio.next #@inicio.prev = nil return aux.value end end
insertar_f(valor)
click to toggle source
INSERTAR FINAL
# File lib/dietas/lista.rb, line 39 def insertar_f(valor) aux = Node.new(valor,nil,@fin) @fin = aux if(empty) @inicio = @fin end return @fin.value end
insertar_i(valor)
click to toggle source
INSERTAR INICIO
# File lib/dietas/lista.rb, line 27 def insertar_i(valor) aux = Node.new(valor,@inicio,nil) @inicio = aux #aux pasa a ser el nuevo inicio if(empty) @fin = @inicio end return @inicio.value end
insertar_n(vector)
click to toggle source
INSERTAR VARIOS
# File lib/dietas/lista.rb, line 51 def insertar_n(vector) count = 0 for i in vector insertar_i(i) count = count + 1 end return count end