You are on page 1of 5

CÓDIGO: FO-DOC-112

UNIVERSIDAD DE LOS LLANOS VERSIÓN:


PÁGINA: 1 de 5
01
PROCESO GESTION DE APOYO A LA ACADEMIA FECHA: 02/09/2016
FORMATO GUÍA PARA PRÁCTICAS DE LABORATORIO VIGENCIA: 2016

LABORATORIO DE ESTRUCTURA DE DATOS

UNIDAD ACADEMICA: Ingenieria de sistemas.


CURSO: Estructura de datos.
PRACTICA Nº 01: Listas simplemente enlazadas.

1. OBJETIVOS
El alumno creará programas que resuelvan problemas utilizando como estructura de datos principal las
listas.

2. CONSULTA PREVIA
Conceptos de estructuras dinámicas.
Concepto de lista
Operaciones con listas

3. FUNDAMENTO TEORICO
Las listas son conjuntos de registros conceptualmente contiguos pero que físicamente no
tienen por qué estarlo (aunque lo normal es que si lo estén); su orden lógico no tiene
nada que ver con el orden físico de los elementos en el conjunto. Esto se consigue porque
cada elemento de la lista dispone de una referencia que señala al próximo elemento. De
esta forma la lista se mantiene enlazada, y es fácil recorrerla en cualquier sentido.

Una lista lineal sencilla consiste en varios nodos enlazados, cada nodo esta formado por
un campo que hace referencia a otro nodo y además de un campo de información.

1.

Las listas son controladas por una referencia generalmente llamada inicio, cabecera o
raíz. Esta referencia debe estar inicializada a null. Con la ejecución del programa la
referencia inicio puede cambiar de valor.

Para añadir un nuevo elemento existen 3 opciones: al inicio de la lista, en medio de dos
nodos o al final; y para insertar un nodo, en las últimas dos opciones, solo hay que
recorrer la lista y hasta la posición deseada, para que después insertar el nuevo nodo. Un
ejemplo de insertar es:

ELABORADO POR: CARGO:Docente FECHA:


Jesús Reyes Carvajal
CÓDIGO: FO-DOC-112
UNIVERSIDAD DE LOS LLANOS VERSIÓN:
PÁGINA: 2 de 5
01
PROCESO GESTION DE APOYO A LA ACADEMIA FECHA: 02/09/2016
FORMATO GUÍA PARA PRÁCTICAS DE LABORATORIO VIGENCIA: 2016

LABORATORIO DE ESTRUCTURA DE DATOS

2.

3. EQUIPOS, MATERIALES Y REACTIVOS

Equipos Materiales Sustancias y/o Reactivos


Computadores

4. PROCEDIMIENTO O METODOLOGÍA
Organice un proyecto de tal forma que en un paquete (package) o en diferentes paquetes
tenga la siguiente estructura de archivos:

 Nodo.java : Definición del nodo.

 ListaEnlazada.java : Definición de lista simplemente enlazada.

 Main.java : Clase que se encarga de la parte logica del programa.

A continuacion encontrará una guia del código de cada uno de los archivos

Nodo.java

ublic class Nodo {

private int valor; // Variable en la cual se va a guardar el valor.

private Nodo sgte; // Variable para enlazar los nodos.

public void Nodo(){

this.valor = 0;

ELABORADO POR: CARGO:Docente FECHA:


Jesús Reyes Carvajal
CÓDIGO: FO-DOC-112
UNIVERSIDAD DE LOS LLANOS VERSIÓN:
PÁGINA: 3 de 5
01
PROCESO GESTION DE APOYO A LA ACADEMIA FECHA: 02/09/2016
FORMATO GUÍA PARA PRÁCTICAS DE LABORATORIO VIGENCIA: 2016

LABORATORIO DE ESTRUCTURA DE DATOS


this.sgte = null;

// Métodos get y set para los atributos.

public int getValor() {

return valor;

public void setValor(int valor) {

this.valor = valor;

….....

ListaEnlazada.java

public class ListaEnlazada {

private Nodo cabeza;

private int tam;

public void ListaEnlazada(){

cabeza = null; //puntero a tierra

tam = 0;

public boolean esVacia(){

return cabeza == null; // if(cabeza == null)

public int getTam(){

return tam;

ELABORADO POR: CARGO:Docente FECHA:


Jesús Reyes Carvajal
CÓDIGO: FO-DOC-112
UNIVERSIDAD DE LOS LLANOS VERSIÓN:
PÁGINA: 4 de 5
01
PROCESO GESTION DE APOYO A LA ACADEMIA FECHA: 02/09/2016
FORMATO GUÍA PARA PRÁCTICAS DE LABORATORIO VIGENCIA: 2016

LABORATORIO DE ESTRUCTURA DE DATOS


}

…...

Main.java

ublic class Main {

public static void main(String[] args) throws Exception {

ListaEnlazada lista = new ListaEnlazada();

System.out.println("<<-- lista enlazada -->>\n");

// Agregar al final de la lista

lista.agregarAlFinal(12);

lista.agregarAlFinal(15);

lista.agregarAlFinal(9);

// Agregar in inicio de la lista

lista.agregarAlInicio(41);

lista.agregarAlInicio(6);

System.out.println("<<-- Lista -->>");

lista.listar();

…...

Una vez haya organizado su proyecto tenga en cuenta los siguientes requermientos:

Cada atributo debe tener definido dos metodos acceso un Setters y un Getters.

Realice la documentacion necesario del código fuente.

Indente el código fuente para que este se vea bien organizado.

Implemente los metodos necesarios para gestionar la lista enlazada, donde se puedan ejecutar las siguientes
operaciones con la lista.

 AgregarInicio(int valor)

ELABORADO POR: CARGO:Docente FECHA:


Jesús Reyes Carvajal
CÓDIGO: FO-DOC-112
UNIVERSIDAD DE LOS LLANOS VERSIÓN:
PÁGINA: 5 de 5
01
PROCESO GESTION DE APOYO A LA ACADEMIA FECHA: 02/09/2016
FORMATO GUÍA PARA PRÁCTICAS DE LABORATORIO VIGENCIA: 2016

LABORATORIO DE ESTRUCTURA DE DATOS

 AgregarFinal(int valor)

 InsertarDespuesReferencia(int ref, int valor) //Insertar despues de encotrar la referencia

 InsertarDespuesPosicion(int pos, int valor) //Insertar despues encontrar una posicion.

 Listar()

 BuscarReferencia(int ref) // Deber retornar un booleano

 EliminarReferencia(int refe)

 EliminarPosicion(int pos)

Una vez tenga el proyecto libre de errores y cumpla con los requerimientos solicitados, implemente un menu de
opciones para acceder a cada uno de los metodos.

5. RESULTADOS
Verificar que el programa compila sin errores léxico sintácticos y además que cumplan con los
requerimientos solicitados.

6. BIBLIOGRAFIA
Java “Como programar”, 5 edición DEITEL.

ELABORADO POR: CARGO:Docente FECHA:


Jesús Reyes Carvajal