Class: Lista
Overview
CLASE LISTA
Instance Attribute Summary collapse
-
#fin ⇒ Object
readonly
Returns the value of attribute fin.
-
#inicio ⇒ Object
readonly
Returns the value of attribute inicio.
Instance Method Summary collapse
-
#each ⇒ Object
METODO EACH.
-
#empty ⇒ Object
EMPTY : COMPUREBA QUE LA LISTA ESTA VACIA.
-
#extraer_f ⇒ Object
EXTRAER FINAL.
-
#extraer_i ⇒ Object
EXTRAER INICIO.
-
#initialize ⇒ Lista
constructor
FUNCION INITIALIZE.
-
#insertar_f(valor) ⇒ Object
INSERTAR FINAL.
-
#insertar_i(valor) ⇒ Object
INSERTAR INICIO.
-
#insertar_n(vector) ⇒ Object
INSERTAR VARIOS.
Constructor Details
#initialize ⇒ Lista
FUNCION INITIALIZE
12 13 14 15 |
# File 'lib/dietas/lista.rb', line 12 def initialize() @inicio = nil @fin = nil end |
Instance Attribute Details
#fin ⇒ Object (readonly)
Returns the value of attribute fin.
9 10 11 |
# File 'lib/dietas/lista.rb', line 9 def fin @fin end |
#inicio ⇒ Object (readonly)
Returns the value of attribute inicio.
9 10 11 |
# File 'lib/dietas/lista.rb', line 9 def inicio @inicio end |
Instance Method Details
#each ⇒ Object
METODO EACH
92 93 94 95 96 97 98 |
# File 'lib/dietas/lista.rb', line 92 def each nodo = @inicio while(nodo != nil) yield nodo.value nodo = nodo.next end end |
#empty ⇒ Object
EMPTY : COMPUREBA QUE LA LISTA ESTA VACIA
18 19 20 21 22 23 24 |
# File 'lib/dietas/lista.rb', line 18 def empty if (@inicio == nil) return true else return false end end |
#extraer_f ⇒ Object
EXTRAER FINAL
78 79 80 81 82 83 84 85 86 87 88 89 |
# 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 ⇒ Object
EXTRAER INICIO
63 64 65 66 67 68 69 70 71 72 73 74 75 |
# 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) ⇒ Object
INSERTAR FINAL
39 40 41 42 43 44 45 46 47 48 |
# 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) ⇒ Object
INSERTAR INICIO
27 28 29 30 31 32 33 34 35 36 |
# 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) ⇒ Object
INSERTAR VARIOS
51 52 53 54 55 56 57 58 59 60 |
# 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 |