Class: List
- Inherits:
-
Object
- Object
- List
- Includes:
- Enumerable
- Defined in:
- lib/biblioalu0100815146/lista.rb
Instance Attribute Summary collapse
-
#final ⇒ Object
Returns the value of attribute final.
-
#inicio ⇒ Object
Returns the value of attribute inicio.
Instance Method Summary collapse
- #each ⇒ Object
- #extraer_final ⇒ Object
- #extraer_inicio ⇒ Object
-
#initialize ⇒ List
constructor
A new instance of List.
- #insert_end(x) ⇒ Object
- #insert_inicio(x) ⇒ Object
- #insert_multiple(nodos) ⇒ Object
- #to_s ⇒ Object
- #vacio ⇒ Object
Constructor Details
#initialize ⇒ List
Returns a new instance of List.
9 10 11 12 13 14 |
# File 'lib/biblioalu0100815146/lista.rb', line 9 def initialize() @inicio = nil @final = nil end |
Instance Attribute Details
#final ⇒ Object
Returns the value of attribute final.
7 8 9 |
# File 'lib/biblioalu0100815146/lista.rb', line 7 def final @final end |
#inicio ⇒ Object
Returns the value of attribute inicio.
7 8 9 |
# File 'lib/biblioalu0100815146/lista.rb', line 7 def inicio @inicio end |
Instance Method Details
#each ⇒ Object
90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 |
# File 'lib/biblioalu0100815146/lista.rb', line 90 def each if (@inicio == nil and @final == nil) yield nil elsif (@inicio == @final) yield @inicio.value else while(@inicio != nil) yield @inicio.value @inicio = @inicio.next end end end |
#extraer_final ⇒ Object
41 42 43 44 45 46 47 48 49 50 |
# File 'lib/biblioalu0100815146/lista.rb', line 41 def extraer_final() if (@final == nil) return nil else aux= @final @final= final.prev return aux end end |
#extraer_inicio ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 |
# File 'lib/biblioalu0100815146/lista.rb', line 16 def extraer_inicio() if (@inicio == nil) return nil else aux = @inicio @inicio = @inicio.next return aux end end |
#insert_end(x) ⇒ Object
52 53 54 55 56 57 58 59 60 61 62 63 64 65 |
# File 'lib/biblioalu0100815146/lista.rb', line 52 def insert_end(x) nodo = Node.new(x,nil,nil) if(@final == nil) @final = nodo @inicio = nodo else aux = @final @final = nodo @final.prev = aux aux.next = @final end end |
#insert_inicio(x) ⇒ Object
28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/biblioalu0100815146/lista.rb', line 28 def insert_inicio(x) nodo = Node.new(x,nil,nil) if(@inicio == nil) @inicio = nodo @final = nodo else aux = @inicio @inicio = nodo @inicio.next = aux aux.prev = @inicio end end |
#insert_multiple(nodos) ⇒ Object
68 69 70 71 72 73 74 |
# File 'lib/biblioalu0100815146/lista.rb', line 68 def insert_multiple(nodos) nodos.each do |element| insert_inicio(element) end end |
#to_s ⇒ Object
111 112 113 114 115 116 117 118 119 120 121 122 |
# File 'lib/biblioalu0100815146/lista.rb', line 111 def to_s output = [] i=0; while(@inicio != nil) output1 = @inicio.value.to_s output[i] = output1 @inicio = @inicio.next i = i+1 end output end |
#vacio ⇒ Object
76 77 78 79 80 81 82 83 84 85 86 87 88 |
# File 'lib/biblioalu0100815146/lista.rb', line 76 def vacio() if(@inicio == nil) return true else return false end end |