Igor Santos Grueiro. Muchos objetos tienen CLAVE.

Slides:



Advertisements
Presentaciones similares
ÍNDICES.
Advertisements

5. Estructuras no lineales estáticas y dinámicas
IBD Clase 7.
Curso de Java Capitulo 7: Conceptos sobre poo Profesor:
ESTRUCTURA DE DATOS Unidad 04 Árboles BINARIOS DE BUSQUEDA.
Arbol de búsqueda binaria
Lenguaje de programación Java
Programación II Recursividad
ÁRBOLES EN C UNIVERSIDAD “ALONSO DE OJEDA” Facultad de Ingeniería
Clases Extendidas La clase extendida hereda los campos y métodos de la clase de la cual extiende. La clase original se conoce como superclase y la clase.
Programación II Listas
Polimorfismo Unidad 4.
ÁRBOLES BINARIOS DE BUSQUEDA
Operaciones sobre un árbol
Conceptos más avanzados de Programación Orientada a Objetos Programación 2005 Licenciatura de Lingüística y Nuevas Tecnologías.
Tema 4 Árboles. Conceptos Generales..
Algoritmos Aleatorizados
Marzo 2007 Lenguajes Visuales Clase III.
Cont. Arbol Binario de Búsqueda
Programación II Colas Igor Santos Grueiro.
Integrantes: Esteban Jiménez Guesseppe Lozada Mario Rodriguez Gustavo Tenorio Fabio.
Ampliación de Sistemas Operativos
Cont. Arbol Binario de Búsqueda (2). Sobre los recorridos Las versiones recursivas de los recorridos son costosas debido a la gran cantidad de llamadas.
Tema Nº4.
COLAS, IMPLEMENTACIÓN A PARTIR DE LISTAS Y PARA PILAS
Igor Santos Grueiro. De este tipo de pilas NO vamos a hablar.
Listas circulares.
Técnicas avanzadas de programación Interfaces
Igor Santos Grueiro. Ahora tenemos datos y datos …
ÁRBOLES BINARIOS DE BÚSQUEDA
PILAS, COLAS, RECURSIVIDAD.
Heaps Mauro Maldonado Abril/2005. Introducción La estructura heap es frecuentemente usada para implementar colas de prioridad. En este tipo de colas,
ARBOLES ESTRUCTURAS DE DATOS.
7.  El TDA Diccionario.
Estructura de Datos y Algoritmos
ESTRUCTURA DE DATOS EN JAVA
Árboles binarios de búsqueda
Arboles M.C. José Andrés Vázquez FCC/BUAP
Métodos de Búsqueda Informada. Búsqueda de la mejor Ruta En esta sección no sólo nos interesa encontrar una posible ruta, sino obtener aquella ruta que.
Programación IMC José Andrés Vázquez Flores. Definición Un arreglo es un conjunto finito e indexado de elementos homogéneos, que se referencian por un.
INTRODUCCIÓN A LA PROGRAMACIÓN ORIENTADA A OBJETOS Encapsulamiento.
Árboles Recomendado: 1. Nivelación Funciones
Árboles Binarios Estructuras de Datos.
Arreglos Programación I MC Beatriz Beltrán Martínez.
1 Arboles AVL Introducción Arboles AVL (Adel’son-Vel’skii and Landis.
Programación orientada a objetos Capítulo 5 Comportamiento mas sofisticado.
Diccionarios El TDA diccionario Búsqueda binaria
Interfaces ELO329: Diseño y Programación Orientados a Objetos.
1 Interfaces y Clases Internas ELO-329: Diseño y programación orientados a objetos Agustín J. González.
Patrón Iterator Santiago García Sánchez Rebeca Marcos Salcedo Mª Cristina Zapatero Gironda.
Arboles B (búsqueda externa)
Herencia. Introducción La idea básica es poder crear clases basadas en clases ya existentes. Cuando heredamos de una clase existente, estamos re-usando.
Presentado por: PABLO ANDRES DIAZ SAIN HASSAM CAICEDO
Algoritmos y estructura de datos en I.O.
Árboles Binarios de Búsqueda (ABB)
Arboles Binarios.
HERENCIA.
MIA - Grupo 5 Unidad 2.

ESTRUCTURAS LINEALES “LA PILA”
Dado que una colección esta gestionada por una clase dentro del lenguaje que estamos utilizando, y en cierta forma no se tiene un control total.
Herencias Conceptos básicos i
Arboles Binarios: AVL (Adelson – Velskii - Landis)
1 ListaUna Lista se define como una serie de N elementos E 1, E 2,..., E N, ordenados de manera consecutiva, es decir, el elemento E k (que se denomina.
Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Práctica 4 Versión Diseño de tipos Igualdad, representación, código,
Bases de datos II Universidad del Cauca Ing. Wilson Ortega.
Diseño de tipos Igualdad, representación, código, copia y relación de orden Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos.
Introducción a programación web Martin Esses. Los datos almacenados en las bases de datos normalmente son mostrados en nuestras vistas. Para que nuestras.
Concepto de Tipo y Subtipo Diseño e Implementación Fundamentos de Programación Departamento de Lenguajes y Sistemas Informáticos Unidad Didáctica 10 Versión.
UNIDAD ACADÉMICA PROFESIONAL TIANGUISTENCO LICENCIATURA EN INGENIERÍA DE SOFTWARE UNIDAD DE APRENDIZAJE: ESTRUCTURAS DE DATOS Créditos institucionales.
Transcripción de la presentación:

Igor Santos Grueiro

Muchos objetos tienen CLAVE

Cuando un objeto dispone de clave, EL ACCESO normalmente se realiza por ésta

¿Qué estructura de datos CONOCEMOS que tenga acceso por una clave?

Para eso están los ÁRBOLES

Un ÁRBOL BINARIO es una estructura de datos formada por NODOS

2 enlaces Clave menorClave mayor

Un nodo de un BST tiene un HIJO IZQUIERDO y un HIJO DERECHO

izquierdoderecho

Un nodo tiene un ELEMENTO Y una CLAVE que permite el acceso

CLAVE ELEMENTO

LA CLAVE TIENE QUE SER COMPARABLE

recordemos

“Implements” se utiliza para decir que una clase tiene cierto comportamiento: UNA INTERFAZ 1

UNA INTERFAZ es como una clase abstracta, pero Sin atributos 2

Las clases que implementen una interfaz tienen que definir sus métodos 3

“Comparable” tiene el método “Compareto”

“Compareto” puede devolver

> 0 si “this” es mayor al objeto que se compara

< 0 si “this” es Menor al objeto que se compara

0 si “this” es igual al objeto que se compara

Vamos a implementar la Clase estudiante

Un estudiante tiene: Dni de tipo “int” Nombre de tipo “string” nota de tipo “double”

Un estudiante es “Comparable” por su número de dni

Un estudiante tiene implementado el método “tostring”

5 minutos de trabajo personal

EStudiante

¿ de qué tipo serán la clave y el elemento del nodo de un BST?

Nodo nodo comparable Object

nodoBst

Un BST tiene un nodo raíz Raíz

Bst: Constructor

¿ cúales son las Operaciones que se pueden hacer con un BST ?

Inserción de un elemento

Elementos a insertar: 2,5,3,1,6 Elemento a insertar

Bst: insertar

búsqueda De elemento UN

Elemento a Buscar 3 Devolvemos el objeto con clave 3

Bst: get

Eliminar un

Para eliminar un objeto con cierta clave

Se busca elemento 1 EL

Se elimina El elemento 2

Existen 3 posibilidades

No tiene hijos

Elemento a eliminar 3 Eliminamos el objeto con clave 3

tiene un hijo

Elemento a eliminar 5 Eliminamos el objeto con clave 5 y el hijo ocupa su lugar

tiene Los dos hijos

Elemento a eliminar 2 Eliminamos el objeto con clave 2 Se remplaza o por el mayor de su izquierda O por el menor de su derecha 3

Bst: Borrar

Recorrer Un BST

Recorrido Pre-orden

Recorrido Pre-ORDER

Recorrido en Post-orden

Recorrido POST-ORDER

Recorrido IN-orden

Recorrido IN-ORDER

Si los elementos tienen clave

Y queremos tener acceso indexado

Podemos usar árboles