class Sll

Clase lista simplemente enlazada @author alu0100880625 @attr_reader [Node] head struct que almacena el nodo siguiente (:next) y el dato del actual (:value)

Constants

Node

Attributes

head[R]

Public Class Methods

new() click to toggle source

Método que instancia un objeto de la clase (una lista con un nodo nil nil)

# File lib/dieta/sll.rb, line 8
def initialize
        @head=Node.new(nil,nil)
end

Public Instance Methods

extract() click to toggle source

Método que extrae un dato de la lista @return [Data] dato extraido

# File lib/dieta/sll.rb, line 19
def extract
        aux=@head[:value]
        @head=@head[:next]
        aux
end
insert(data) click to toggle source

Método que crea un nodo que contenga el dato y lo inserta en la lista @param [Data] data dato que se desea insertar

# File lib/dieta/sll.rb, line 13
def insert(data)
        aux=Node.new(data,@head)
        @head=aux
end
to_s() click to toggle source

Método que formatea la lista para mostrarla @return [String] cadena que contiene la lista formateada

# File lib/dieta/sll.rb, line 26
def to_s
        aux=@head
        i=1
        str=""
        while(aux[:next]!=nil)
                str+="#{i}) #{aux[:value]}\n"
                aux=aux[:next]
                i+=1
        end
        str
end