slide 7-1 copyright © 2003 pearson education, inc. figure: estructuras de datos

36
Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Upload: odalis-cuellar

Post on 11-Apr-2015

103 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-1Copyright © 2003 Pearson Education, Inc.

Figure:

Estructuras de datos

Page 2: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-2Copyright © 2003 Pearson Education, Inc.

Fichas ordenas en orden alfabético y por otro criterio, usando hilos

: hilo de inicio

: hilo de ficha

: hilo final

ficha + hilo que sale de ella = nodohilo naranjo = puntero iniciohilo verde = puntero de nodo que apunta a “nada”

Page 3: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-3Copyright © 2003 Pearson Education, Inc.

usando hilos, equivalencia en Java

: hilo de inicio Nodo inicio;

: hilo de ficha class Nodo { int x; Nodo siguiente; }

: hilo final es el puntero de un objeto que tiene asignado el valor null apunta a null:

Nodo x = new Nodo(…); x.siguiente = null;

Page 4: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-4Copyright © 2003 Pearson Education, Inc.

Premios Novel ordenados por título pero enlazados por autor

Page 5: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-5Copyright © 2003 Pearson Education, Inc.

El arreglo Readings almacenado en memoria a aprtir de la dirección x

Page 6: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-6Copyright © 2003 Pearson Education, Inc.

Arreglo bidimensional con cuatro filas y cinco columnas

Page 7: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-7Copyright © 2003 Pearson Education, Inc.

Nombres almacenados en memoria como una lista contigua

Page 8: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-8Copyright © 2003 Pearson Education, Inc.

Estructura de una lista encadenada

Page 9: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-9Copyright © 2003 Pearson Education, Inc.

Borrando un elemento de una lista encadenada

Page 10: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-10Copyright © 2003 Pearson Education, Inc.

Insertando un elemento de una lista encadenada

Page 11: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-11Copyright © 2003 Pearson Education, Inc.

Procedimiento para imprimir una lista encadenada

Page 12: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-12Copyright © 2003 Pearson Education, Inc.

Usando una pila (stack) para imprimir una lista en orden inverso

Page 13: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-13Copyright © 2003 Pearson Education, Inc.

Usando la pila para imprimir en orden inverso

Page 14: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-14Copyright © 2003 Pearson Education, Inc.

Procedimiento (que usa una pila auxiliar) para imprimir una lista encadenada en orden inverso

Page 15: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-15Copyright © 2003 Pearson Education, Inc.

Una pila en memoria

Page 16: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-16Copyright © 2003 Pearson Education, Inc.

Cola implementada con punteros head y tail

Page 17: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-17Copyright © 2003 Pearson Education, Inc.

Cola que se “arrastra” a través de la memoria

Page 18: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-18Copyright © 2003 Pearson Education, Inc.

Cola circular que contiene las letras F hasta O realmente almacenada en la memoria

Page 19: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-19Copyright © 2003 Pearson Education, Inc.

Una cola circular en su forma conceptual en la cual la última celda es “adyacente” a la primera celda

Page 20: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-20Copyright © 2003 Pearson Education, Inc.

Un organigrama ejemplo

Page 21: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-21Copyright © 2003 Pearson Education, Inc.

Terminología de árboles

Page 22: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-22Copyright © 2003 Pearson Education, Inc.

Estructura de un nodo en un árbol binario

Page 23: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-23Copyright © 2003 Pearson Education, Inc.

Estructura conceptual y la organización real de un árbol binario que usa sistema de lista encadenada

Page 24: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-24Copyright © 2003 Pearson Education, Inc.

Figure 7.20: A tree stored without pointers

Page 25: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-25Copyright © 2003 Pearson Education, Inc.

Vista conceptual de árbol desbalanceado y su almacenamiento como arreglo

Page 26: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-26Copyright © 2003 Pearson Education, Inc.

Las letras A a la M arregladas en un árbol ordenado

Page 27: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-27Copyright © 2003 Pearson Education, Inc.

Los árboles sucesivamente menores en la búsqueda de la letra J

Page 28: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-28Copyright © 2003 Pearson Education, Inc.

Imprimir un árbol en orden alfabético

Page 29: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-29Copyright © 2003 Pearson Education, Inc.

Procedimiento recursivo Java para imprimir un árbol binario

public void imprimeArbol(Nodo r){ if(r!=null){

if(r.izq!=null){

imprimeArbol(r.izq);

}

System.out.println(r.x);

if(r.der!=null){

imprimeArbol(r.der);

}

}

}

class Nodo {

int x;

Nodo izq;

Nodo der;

Nodo(int xx){

x=xx;

}

}

Page 30: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-30Copyright © 2003 Pearson Education, Inc.

Insertar una M en la lista B, E, G, H, J, K, N, P

almacenada como árbol binario

Page 31: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-31Copyright © 2003 Pearson Education, Inc.

M insertada en la lista B, E, G, H, J, K, N, P

almacenada como árbol binario

Page 32: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-32Copyright © 2003 Pearson Education, Inc.

Procedimiento para insertar una nueva entrada en árbol binario (1)

public void insertarNodo(int xx){

if(raiz==null){

raiz=new Nodo(xx);

} else {

insertar(raiz,xx);

}

}

Page 33: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-33Copyright © 2003 Pearson Education, Inc.

Procedimiento para insertar una nueva entrada en árbol binario (2)

void insertar(Nodo r, int xx){

if(xx==r.x)return;

if(xx<r.x){

if(r.izq==null)r.izq=new Nodo(xx);

else insertar(r.izq,xx);

return;

}

if(xx>r.x){

if(r.der==null)r.der=new Nodo(xx);

else insertar(r.der,xx);

return;

}

}

Page 34: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-34Copyright © 2003 Pearson Education, Inc.

Búsqueda binaria en una lista organizada como árbol binario

Page 35: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-35Copyright © 2003 Pearson Education, Inc.

Una pila de enteros en C++

Page 36: Slide 7-1 Copyright © 2003 Pearson Education, Inc. Figure: Estructuras de datos

Slide 7-36Copyright © 2003 Pearson Education, Inc.

Pila de enteros implementada en Java