class Lista

Clase que representa una lista simplemente enlazada

Attributes

head[R]

Public Class Methods

new() click to toggle source
# File lib/Dieta/lista_codigo.rb, line 10
def initialize
    @head = Node.new
end

Public Instance Methods

pop() click to toggle source

Extrae por el comienzo de la lista

# File lib/Dieta/lista_codigo.rb, line 40
def pop
    if @head!= nil then
        aux = @head[:value]
        @head = @head[:next]
    else
        aux=nil
    end
    if @head ==nil then 
        @head = Node.new
    end
    aux
end
push(x) click to toggle source

Inserta un valor al comienzo de la lista

# File lib/Dieta/lista_codigo.rb, line 15
def push(x)
    if @head[:value] == nil
        @head[:value]=x
    else
        aux= @head.clone
        @head = Node.new(x,aux)
    end
    @head[:value]
end
size() click to toggle source

Devuelve el numero de elementos de la lista

# File lib/Dieta/lista_codigo.rb, line 26
def size
    count = 0
    if @head[:value] != nil then
        count=1
    end
    aux= @head
    until aux[:next] == nil do
        count+=1
        aux=aux[:next]
    end
    count
end