Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
AUTOR:
Tlgo. Elvis tapia Aparicio
DOCENTE:
Ing. Cesar Bustamante Chong
CUARTO SEMESTRE
GRUPO#3
AO LECTIVO:
2015-2016
FECHA:
28/08/2015
ndice
1. Introduccion
2. Material De Clase
2.1. Unidad 1er ParcialAlgoritmos De Ordenacin y Bsqueda
Insercin Directa
Burbuja
Shellsort
Radix
Algoritmo Quicksort
Ordenamiento Por Conteo
Ordenamiento Por Distribucion
2.2. Colecciones
Coleccin Map
Subclases De La Coleccin Map:
o HashMap
o TreeMap
o LinkedHashMap
3. Apuntes De La Clase
4. Ejercicios En Clase
4.1 Ejercicios con metodos de ordenamiento.
Insercion Directa
Quicksort 1
Conteo
Quicksort 2
Ejecucion de pasos del metodo quicksort
Ejemplo con diferentes metodos
o Quicksort:Timer
6.5. Remove
6.6. Colecciones
7.
Conclusion
8. Glosario
Insercin directa.
Este metodo consiste en buscar el lugar adecuado para cada registro
recorriendo los registros anteriores para dejar un lugar vaco para el
nuevo elemento. El proceso de acomodo de cada elemento se repite
hasta llegar al ultimo elemento, los elementos previos al elemento a
acomodar se encuentran en orden.
Este es el metodo usado por los jugadores de cartas para acomodar
su juego.
Este ordenamiento parte del principio de que el primer elemento
esta ordenado y sucesivamente se van colocando los miembros en la
posicion adecuada de acuerdo a que pueden ir antes o despues del
primer miembro.
Para ser mas claros, supongamos que tenemos tarjetas con nombres
los cuales queremos ordenar de forma alfabetica, tomamos la
primer tarjeta, la tarjeta dos y la comparamos con la primera,
entonces decidimos si va antes o despues de la primera. Una vez
colocadas ambas tarjetas, seguimos con la tercera, la cual
comparamos con la primera y decidimos si va antes o despues de la
primera, si va despues entonces tendremos que comparar con la
segunda tarjeta, por lo que podra ir en medio de las tarjetas o al
final de las dos primeras.
Burbuja (Bubble)
Shell sort.
El metodo Shell divide el arreglo a ordenar en varios grupos haciendo
comparaciones e intercambios entre ellos. El tamano de los subgrupos
se decrementa y el numero de subgrupos se incrementa hasta llegar a
tener n grupos de tamano 1. A partir de este punto, el metodo funciona
como el de insercion directa.
El tamano de los subgrupos as como el total de estos puede
determinarlos el usuario para hacer mas eficiente el algoritmo.
Radix.
Algoritmo: Quicksort
Descripcin.
Se elige un pivote.
Se reubican los elementos respecto al pivote los menores antes, los
mayores atras.
El arreglo queda separado en dos subarreglos
Se repite el proceso con los subarreglos resultantes
El arreglo esta ordenado
Se llama tambien Divide y Venceras
Pseudo-cdigo
quicksort(q)
devolver q
sino
seleccionar un pivote de q
Descripcin.
Ejemplo:
COLECCIONES
COLECCIN MAP.
La Interface Map (java.io.Map) en Java, nos permite representar una
estructura de datos para almacenar pares clave/valor; de tal manera
que para una clave solamente tenemos un valor. Esta estructura de
Con un TreeMap
treeMap.put(11, "Capdevila");
treeMap.put(14, "Xabi Alonso");
treeMap.put(16, "Busquets");
treeMap.put(8, "Xavi Hernandez");
treeMap.put(18, "Pedrito");
treeMap.put(6, "Iniesta");
treeMap.put(7, "Villa");
// Imprimimos el Map con un Iterador que ya hemos instanciado
anteriormente
it = treeMap.keySet().iterator();
while(it.hasNext()){
Con un LinkedHashMap
linkedHashMap.put(15, "Ramos");
linkedHashMap.put(3, "Pique");
linkedHashMap.put(5, "Puyol");
linkedHashMap.put(11, "Capdevila");
linkedHashMap.put(14, "Xabi Alonso");
linkedHashMap.put(16, "Busquets");
linkedHashMap.put(8, "Xavi Hernandez");
linkedHashMap.put(18, "Pedrito");
linkedHashMap.put(6, "Iniesta");
linkedHashMap.put(7, "Villa");
// Imprimimos el Map con un Iterador que ya hemos
instanciado anteriormente
it = linkedHashMap.keySet().iterator();
while(it.hasNext()){
Pilas
STACK
La clase Stack es una clase de las llamadas de tipo LIFO (Last In - First Out, o ltimo
en entrar - primero en salir). Esta clase hereda de la clase Vector y con 5
operaciones permite tratar un vector a modo de pila o stack.Las operaciones
bsicas son push (que introduce un elemento en la
pila), pop (que saca un elemento de la pila), peek (consulta el primer elemento de
la cima de la pila), empty (que comprueba si la pila est vaca) y search (que busca
un determinado elemento dentro de la pila y devuelve su posicin dentro de
ella).Esta clase es muy sencilla y al crear un objeto de tipo Stack con el
constructor bsico evidentemente no contendr ningn elemento.Un conjunto
mucho ms completo y consistente para operaciones de stack LIFO son
proporcionados en la interface De qu y sus implementaciones, pero nosotros de
momento vamos a limitarnos al estudio de la clase Stack.
Realizaremos un ejemplo a modo de uso de pila. Uno de los casos ms usados en
informtica de una pila es cuando queremos verificar si una determinada sentencia
o instruccin est equilibrada en cuanto a nmero de parntesis, corchetes o llaves
de apertura y cierre.
Cuando se escribe cdigo de programacin si no existe equilibrio entre signos de
apertura (por ejemplo un parntesis de apertura) y cierre (por ejemplo un
parntesis de cierre) ni siquiera debera procesarse la sentencia ya que no estara
formalmente bien construida.
De esto se encargan los analizadores lxicos de los compiladores.As que vamos a
utilizar esta vez tan solo una clase Programa con el mtodo main, donde vamos a ir
analizando una sentencia para verificar si es equilibrada o no en smbolos de
parntesis, recorriendo todos sus caracteres desde el inicio hasta el final.
Iremos construyendo nuestra pila apilando un smbolo (cada vez que detectemos
un smbolo de apertura o desapilando de ella cuando detectemos un smbolo de
cierre.
Tendremos que ir analizando todos los caracteres de una expresin y actuar
vaca y decimos que el puntero raiz apunta a null (Si apunta a null decimos que no
tiene una direccin de memoria.
Luego de realizar la insercin la lista tipo pila queda de esta manera: un nodo con el valor
10 y raz apunta a dicho nodo. El puntero del nodo apunta a null ya que no hay otro nodo
despus de este.
Insertamos luego el valor 4: insertar(4)
Ahora el primer nodo de la pila es el que almacena el valor cuatro. raz apunta a
dicho nodo. Recordemos que raz es el puntero externo a la lista que almacena la
direccin del primer nodo. El nodo que acabamos de insertar en el campo puntero
guarda la direccin del nodo que almacena el valor 10.
EXTRACCION DE NODOS
Ahora qu sucede si extraemos un nodo de la pila. Cul se extrae? Como sabemos
en una pila se extrae el ltimo en entrar.Al extraer de la pila tenemos: extraer()
La pila ha quedado con un nodo.Hay que tener cuidado que si se extrae un nuevo
nodo la pila quedar vaca y no se podr extraer otros valores (avisar que la pila
est vaca)
Colas
Una cola es simplemente un lugar para almacenar cosas, donde esas cosas se
insertan una detrs de otra y para extraer siempre se lo hace por adelante de la
cola donde se encuentra el primer elemento. Una cola funciona como una fila o cola
de personas, que esperan su turno para ser atendidas, la primera persona atendida
es siempre la primera de la fila y cuando llega una persona y queremos
incorporarla a cola o adicionarla debemos hacerlo por detrs de la ultima persona
en la cola.
tamanio() : intretorna la cantidad de elementos que tiene la cola, para realizar esto
se realiza la resta fin - inicio.
copiar(Cola B)copia tal cual la cola B a la cola destino, al finalizar cola B queda
totalmente vaca. Este mtodo es muy til al momento de hacer operaciones con
colas.
Insercin Directa
Este mtodo consiste en buscar el lugar adecuado para cada registro recorriendo
los registros anteriores para dejar un lugar vaco para el nuevo elemento.
a) Ejemplo: 50,20,30,40
2) 20<50
20
50
3) 40<20 (f)
40<50 (v)
20
40
50
4) 80<20 (f)
80<40 (f)
80<50 (f)
20
40
50
80
5) 30<20 (f)
30<40 (f)
20
30
40
50
80
Shell Sort.
Divide el arreglo a ordenar en varios grupos haciendo comparaciones e
intercambios entre ellos.
Quicksort.
Es el algoritmo de ordenamiento mas rapido.
Se reubican los elementos respecto al pivote los menores antes, los mayores
atrs.
Colecciones.
Es un conjunto de arreglos que pueden crecer en forma dinmica.
Array list
1. List
Linked List
2. Map
Forman parte de
arreglos.
Hash Map
Hash table
Linked hash map
Tree map
3. set
Enum set
Hash set
Linked hash set
Sorted set
Tree set
Cast:
COLECCIN MAP.
Nos permite representar una estructura de datos para almacenar pares
clave/valor; de tal manera que para una clave solamente tenemos un valor.
TreeMap
El map los ordena de forma natural
LinkedHashMap
Inserta en el map los elementos en el orden en el que se va insertando,no tiene
orden de elementos como tal por utiliza de elementarios lentos.
2. QUICKSORT
3. CONTEO
// "ITERATOR"
Iterator<Integer> IndiceC_TM = ColeccionTM.keySet().iterator();
// CON UNA ESTRUCTURA DE CONTROL "SE LEE" LOS ELEMENTOS DE LA
// COLECCION
while (IndiceC_TM.hasNext()) {
Integer llave = IndiceC_TM.next();
System.out.println("La llave es: " + llave + " y el valor es: " + ColeccionTM.get(llave));
} // del while
// de la coleccion map: TREEMAP
Map ColeccionLHM = new LinkedHashMap<>();
// PRIMERA OPERACION CON LA COLECCION ES INSERTAR
// ELEMENTOS A LA COLECCION
// IMPLEMENTAR LAS MATERIAS QUE SE NECESITAN REGISTRAR
// EN LA COLECCION MAP, EN SUS DIFERENTES SUBCLASES:
// TREEMAP,
ColeccionLHM.put(600, "Programacion III");
ColeccionLHM.put(520, "Topicos Especiales");
ColeccionLHM.put(300, "Estructura de Datos I");
ColeccionLHM.put(110, "Fundamentos de Administracion I");
ColeccionLHM.put(500, "Programacion Web");
ColeccionLHM.put(200, "Fundamentos de Programacion II");
ColeccionLHM.put(510, "Programacion Orientada a Objetos I");
ColeccionLHM.put(420, "Base de Datos II");
ColeccionLHM.put(120, "Matematicas I");
ColeccionLHM.put(310, "Programacion II");
ColeccionLHM.put(400, "Estructura de Datos II");
ColeccionLHM.put(210, "Contabilidad");
ColeccionLHM.put(320, "Base de Datos I");
ColeccionLHM.put(220, "Matematicas II");
ColeccionLHM.put(100, "Fundamentos de Programacion I");
// SEGUNDA OPERACION CON LA COLECCION QUE ES LA DE
// LEER LOS ELEMENTOS QUE TIENE LA MISMA
// PARA LA LECTURA SE UTILIZA UN ELEMENTO QUE SE LLAMA
// "ITERATOR"M
Iterator<Integer> IndiceC_LHM = ColeccionLHM.keySet().iterator();
// CON UNA ESTRUCTURA DE CONTROL "SE LEE" LOS ELEMENTOS DE LA
// COLECCION
while (IndiceC_LHM.hasNext()) {
Integer llave = IndiceC_LHM.next();
System.out.println("La llave LHM es: " + llave + " y el valor es: " +
ColeccionTM.get(llave));
} // del while
} // del main
} // de la clase
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
Provincia.put("04", "Manabi");
Provincia.put("09", "Guayas");
Contenido="09";
String Contenido2="01";
String Contenido7="04";
Iterator<String> Leer_Masivo_Provincia= Provincia.keySet().iterator();
while (Leer_Masivo_Provincia.hasNext()){
Contenido = Leer_Masivo_Provincia.next();
}
Tarea # 1 :CDIGO
package EstructuradeDatos;
public class deber1 {
public static void main(String[] args) {
// TODO Auto-generated method stub
int v;
for (int i = 0; i < k.length ; i++) {
k[i]= (int)(Math.random()*60);
System.out.print( k[i]+"\t");
v=k[i];
for (int j= i-1; j>=0 && k[j]>v ; j--) {
k[j+1]=k [j];
k[j]=v;
}
//System.out.println();
}
System.out.println();
System.out.println("Datos Ordenados");
for (int x= 0; x < k.length ; x++) {
System.out.print( k[x]+"\t");
}
System.out.println();
}
VISUALIZACIN
Tarea #2 :CDIGO
package EstructuradeDatos;
import java.util.Random;
public class deber2 {
}
System.out.println();
System.out.println("Metodo Burbuja");
for (int w= 0; w< K.length ; w++) {
System.out.print(
K[w]+"\t");
}
System.out.println();
}
}
VISUALIZACIN
int v;
for (int i = 0; i < k.length ; i++) {
k[i]= (int)(Math.random()*60);
System.out.print(
k[i]+"\t");
v=k[i];
for (int j= i-1; j>=0 && k[j]>v ; j--) {
k[j+1]=k [j];
k[j]=v;
}
System.out.println();
System.out.println("Datos Ordenados");
for (int x= 0; x < k.length ; x++) {
System.out.print( k[x]+"\t");
}
System.out.println();
System.out.println();
long fin=System.nanoTime();
long tiempo=fin-inicio;
System.out.println("Tiempo:"+tiempo);
}
}
VISUALIZACIN
import java.util.Random;
public class deberTimerBurbuja {
}
System.out.println();
System.out.println("Datos Ordenados");
for (int w= 0; w< K.length ; w++) {
System.out.print(
K[w]+"\t");
}
System.out.println();
long fin=System.nanoTime();
long tiempo=fin-inicio;
System.out.println("Tiempo:"+tiempo);
}
}
VISUALIZACIN
}
a[ j ] = auxiliar;
}
a[ j - k ] ; j -=
}
long fin=System.nanoTime();
long tiempo=fin-inicio;
System.out.println("Tiempo:"+tiempo);
}
VISUALIZACIN
VISUALIZACIN
int[] Arreglo_orden
={28,44,64,56,76,1,3,4,176,9,7,9,234,15434,95};//arreglo a ordenar
mostrar(Arreglo_orden);//imprimir original
counting_sort(Arreglo_orden,rango(Arreglo_orden));//llamado a funcion de
ordenamiento
mostrar(Arreglo_orden);//imprimir ordenado
}
public static void mostrar(int[] arreglo){//imprimir arreglo
System.out.println("");
System.out.println("Datos Ordenados");
for(int i=0;i<arreglo.length;i++){
System.out.print(arreglo[i]+",");
}
}
public static int rango(int [] array){//calcula el max y min
y devuelve la diferencia
//Se utiliza para conocer el tamao del arreglo auxiliar
maximo=array[0];
minimo=array[0];
for(int i=0;i<array.length;i++){
if(array[i]<minimo)
minimo=array[i];
if(array[i]>maximo)
maximo=array[i];
}
return maximo-minimo;
}
public static void counting_sort(int[] A,int k){//k
diferencia entre max y min
int[] auxiliar = new int[k+1];//Array aux servira para
contar frecuencias,Se suma 1 para incluir al minimo
for(int i=0;i<=k;i++){//Se inicializan frecuencias 0
auxiliar[i]=0;
}
for(int j=0;j<A.length;j++){//se recorre arreglo a
ordenar y se suma 1 por cada vez que se encuentra
auxiliar[A[j]-minimo]+=1;
//el numero
}
int x=0;//recorrer arreglo final/original
for(int i=0;i<auxiliar.length;i++){//recorre frecuencias
(arrego aux)
for(int j=0;j<auxiliar[i];j++){//las veces que
aparece el num
A[x]=i+minimo;
x++;//siguiente posicion del arreglo ordenado
long fin =System.nanoTime();
long tiempo=fin-inicio;
System.out.println("Tiempo:"+ tiempo);
}
}
}
}}
VISUALIZACIN
}
}
VISUALIZACIN
Contenido = Leer_Masivo_Provincia.next();
System.out.println("La llave es:" +Contenido+ "y el valor
es:"+Provincia.get(Contenido));
}
System.out.println("El tamao de la Coleccion es:" +Provincia.size());
System.out.println("");
System.out.println("");
System.out.println("COLECCION CIUDADES");
System.out.println("");
//GUAYAS
Ciudades.put("09162", "Guayaquil");
Ciudades.put("09163", "Duran");
Ciudades.put("09164", "Samborondon");
Ciudades.put("09165", "Simon Bolivar");
Ciudades.put("09166", "Balao");
Ciudades.put("09167", "yaguachi");
Ciudades.put("09168", "Balzar");
Ciudades.put("09169", "General Villamil");
Ciudades.put("09170", "Milagros");
Ciudades.put("09171", "Isidro Ayora");
Ciudades.put("09172", "Lomas de Sargentillo");
Ciudades.put("09173", "Naranjito");
Ciudades.put("09174", "Pedro Carbo");
Ciudades.put("09175", "Palestina");
Ciudades.put("09176", "Santa Lucia");
Ciudades.put("09177", "El Triunfo");
Ciudades.put("09178", "Bucay");
Ciudades.put("09179", "Empalme");
Ciudades.put("1210", "Quevedo");
Ciudades.put("1211", "Babahoyo");
Ciudades.put("1212", "Vinces");
Ciudades.put("1213", "Baba");
Ciudades.put("1214", "Babahoyo");
Ciudades.put("1215", "Buena Fe");
Ciudades.put("1216", "Mocache");
Ciudades.put("1217", "Montalvo");
Ciudades.put("1218", "Palenque");
Ciudades.put("1219", "Urdaneta");
Ciudades.put("1220", "Valencia");
Ciudades.put("1221", "Ventanas");
Ciudades.put("1310", "Cascol");
Ciudades.put("1311", "Chone");
Ciudades.put("1312", "Manta");
Ciudades.put("1312", "Bolivar");
Ciudades.put("1312", "Caar");
Ciudades.put("1312", "Pichcincha");
Ciudades.put("1312", "Pajan");
Ciudades.put("1312", "San Vicente");
Ciudades.put("1312", "Puerto Lopez");
Ciudades.put("1312", "Olmedo");
Ciudades.put("1312", "Junin");
Ciudades.put("1312", "Pedernales");
Ciudades.put("1312", "Montecristi");
Ciudades.put("1312", "Tosagua");
Ciudades.put("1312", "24 de Mayo");
Ciudades.put("1312", "Santa Anas");
Ciudades.put("1312", "El Carmen");
Ciudades.put("1312", "Flavio Alfaro");
Ciudades.put("1312", "Jaramijo");
Ciudades.put("1312", "Jipijapa");
Ciudades.put("1312", "Rocafuerte");
Ciudades.put("1312", "Sucre");
Ciudades.put("1312", "Jama");
Iterator<String> Leer_Masivo_Ciudad = Ciudades.keySet().iterator();
while (Leer_Masivo_Ciudad.hasNext()){
String Contenido1 = Leer_Masivo_Ciudad.next();
System.out.println("La llave es:" +Contenido1+ "y el valor
es:"+Ciudades.get(Contenido1));
}
CiudadesGuayaquil.put("09162", "Guayaquil");
CiudadesGuayaquil.put("09163", "Duran");
CiudadesGuayaquil.put("09164", "Samborondon");
CiudadesGuayaquil.put("09165", "Simon Bolivar");
CiudadesGuayaquil.put("09166", "Balao");
CiudadesGuayaquil.put("09167", "yaguachi");
CiudadesGuayaquil.put("09168", "Balzar");
CiudadesGuayaquil.put("09169", "General Villamil");
CiudadesGuayaquil.put("09170", "Milagros");
CiudadesGuayaquil.put("09171", "Isidro Ayora");
CiudadesGuayaquil.put("09172", "Lomas de Sargentillo");
CiudadesGuayaquil.put("09173", "Naranjito");
CiudadesGuayaquil.put("09174", "Pedro Carbo");
CiudadesGuayaquil.put("09175", "Palestina");
CiudadesGuayaquil.put("09176", "Santa Lucia");
CiudadesGuayaquil.put("09178", "Bucay");
CiudadesGuayaquil.put("09179", "Empalme");
Iterator<String> Leer_Masivo_CiudadGuayaquil =
CiudadesGuayaquil.keySet().iterator();
while (Leer_Masivo_CiudadGuayaquil.hasNext()){
Contenido3 = Leer_Masivo_CiudadGuayaquil.next();
String Obtener_ciudades= Contenido3+CiudadesGuayaquil.get(Contenido3);
}
CiudadesRios.put("1210", "Quevedo");
CiudadesRios.put("1211", "Babahoyo");
CiudadesRios.put("1212", "Vinces");
CiudadesRios.put("1213", "Baba");
CiudadesRios.put("1214", "Babahoyo");
CiudadesRios.put("1215", "Buena Fe");
CiudadesRios.put("1216", "Mocache");
CiudadesRios.put("1217", "Montalvo");
CiudadesRios.put("1218", "Palenque");
CiudadesRios.put("1219", "Urdaneta");
CiudadesRios.put("1220", "Valencia");
CiudadesRios.put("1221", "Ventanas");
Iterator<String> Leer_Masivo_CiudadRios = CiudadesRios.keySet().iterator();
while (Leer_Masivo_CiudadRios.hasNext()){
Contenido4= Leer_Masivo_CiudadRios.next();
String Obtener_ciudadesR= Contenido4+CiudadesRios.get(Contenido4);
}
System.out.println();
System.out.println();
System.out.println("INTRODUCE EL CODIGO DE LA PROVINCIA:");
Scanner sc = new Scanner(System.in);
int codigo;
codigo =sc.nextInt();
if (codigo ==9){
for(int i=0; i< CiudadesGuayaquil.size(); i++) {
cont= i+1;
}
System.out.println("pertenece a la provincia del:"+Provincia.get(Contenido)+ "y la
cantidad de ciudades es: "+ cont);
}
if (codigo ==01){
java.util.Iterator;
java.util.Map;
java.util.HashMap;
java.util.Random;
class ESTRUCTURA_DEBER {
public static void main(String[]args){
int[]Arreglo1= new int[15];
Map<Integer, String> numeroyletras = new HashMap<>();
// ingreso en la coleccion los primeros 25 numeros
numeroyletras.put(1, "UNO");
numeroyletras.put(2,"DOS");
numeroyletras.put(3,"TRES");
numeroyletras.put(4,"CUATRO");
numeroyletras.put(5,"CINCO");
numeroyletras.put(6,"SEIS");
numeroyletras.put(7,"SIETE");
numeroyletras.put(8,"OCHO");
numeroyletras.put(9,"NUEVE");
numeroyletras.put(10,"DIEZ");
numeroyletras.put(11,"ONCE");
numeroyletras.put(12,"DOCE");
numeroyletras.put(13, "TRECE");
numeroyletras.put(14,"CATORCE");
numeroyletras.put(15,"QUINCE");
numeroyletras.put(16,"DIECISEIS");
numeroyletras.put(17,"DIECISIETE");
numeroyletras.put(18,"DIECIOCHO");
numeroyletras.put(19,"DIECINUEVE");
numeroyletras.put(20,"VEINTE");
numeroyletras.put(21,"VEINTIUNO");
numeroyletras.put(22,"VEINTIDOS");
numeroyletras.put(23,"VEINTITRES");
numeroyletras.put(24,"VEINTICUATRO");
numeroyletras.put(25,"VEINTICINCO");
// GENERAMOS AL RANDOM 15 NUMEROS QUE ESTEN ENTRE 1 Y 25
Random NUMEROS= new Random();
for(int i=0;i<15;i++){
int numero=NUMEROS.nextInt(25)+1;
Arreglo1[i]=numero;
System.out.println("los valores random son:" +Arreglo1[i]);
}
System.out.println();
System.out.println(" la coleccin elegidos aleatoriamente es : ");
for(int i=0;i<15;i++){
Integer llave =Arreglo1[i];
String valor = numeroyletras.get(llave);
if(llave==Arreglo1[i]){
System.out.println("La llave es : " +llave+ " y el valor
es : " + valor);
}
}
}
Tarea #2
DEBER DE ESTRUCTURA DE DATOS II
LISTAS ENLAZADAS
CLASES
NUEVALISTA
package PilasyColumnas;
public class NuevaLista {
public static void main(String[] args) {
ClsLista X= new ClsLista();
// INGRESO DE DATOS
X.insert(new String("*MARCOS CUENCA " +" 20 aos " +" 1224 "));
X.insert(new String("/KEVIN MORAN "+ " 19 aos "+ " 2512 "));
X.insert(new String("-KATHERINE BAGUI" +" 18 aos"+ " 3442 "));
// PRESENTACION
X.print(0);
X.print(1);
X.print(2);
}
}
CLSnodos
package PilasyColumnas;
public class Clsnodos {
private Object info;
private Clsnodos next;
public Clsnodos() {
info = null;
next = null;
}
public Clsnodos(Object o, Clsnodos n) {
setInfo(o);
setNext(n);
}
public void setInfo(Object o) {
info = o;
}
public void setNext(Clsnodos n) {
next = n;
}
public Object getInfo() {
return info;
}
public Clsnodos getNext() {
return next;
}
}
ClsLista
package PilasyColumnas;
Visualizacin: