class Lista

Clase Lista

Representa la lista enlazada

Public Class Methods

new() click to toggle source

Constructor

Pasamos los parametros para construir un objeto Lista:

# File lib/menu/lista.rb, line 15
def initialize ()
    @cabeza = nil
end

Public Instance Methods

cabeza() click to toggle source
  • Devuelve el objeto MenĂº que se encuentra en la cabeza de la lista.

# File lib/menu/lista.rb, line 41
def cabeza
    @cabeza.datos
end
extraerCabeza() click to toggle source
  • Borra el objeto de la cabeza de la Lista.

# File lib/menu/lista.rb, line 20
def extraerCabeza
        auxiliar = @cabeza
        @cabeza = auxiliar.siguiente
        auxiliar.siguiente = nil
        auxiliar.datos
end
insertar(datos) click to toggle source
  • Inserta el objeto o grupo de objetos en la cabeza de la Lista

# File lib/menu/lista.rb, line 28
def insertar (datos)
    insertado = false
    if datos.instance_of?Array
        datos.each{|x| add(x)}
        insertado = true
    else
        add(datos)
        insertado = true
    end
    insertado
end

Private Instance Methods

add(datos) click to toggle source
# File lib/menu/lista.rb, line 47
def add (datos)
    if @cabeza == nil then
        @cabeza = Node.new(datos,nil)
    else
        nodo_aux = @cabeza
        while nodo_aux.siguiente != nil
            nodo_aux = nodo_aux.siguiente
        end
    nodo_aux.siguiente = Node.new(datos, nil)
    end
end