-
Notifications
You must be signed in to change notification settings - Fork 0
Clase #14(13 de mayo 2020)
La clase comenzo revisando el programa actualizado del curso y completando el UML del super!
Que es un Abstract Data Type(ADT)?
Es un conjunto de objetos que tienen un conjunto de operaciones definidas
Los ADT es un tipo de abstraccion matematica, la definicion de ellos no incluye las operaciones.
Cuando se habla de datos pensamos en:
-Integers -Reals -Booleans
Pero si se piensa en tipos de ADTS se habla de:
-Listas -Colas -PIlas -Grafos
Los ADTS tienen operaciones asociadas por ejemplo
ADD REMOVE CONTAINS
Como podemos implementar tipos de datos abstractos en Java??
Las clases pueden ser usadas para implementar los ADT ya que nos permiten esconder datos de implementación
Como hacerlo?? LLamar a métodos de la clase
Los ADT no es un concepto de el paradigma Orientado a objetos Podríamos considerar los ADT COMO una interfaz o una clase de características
Que operaciones deberíamos agregar a los ADT??
Eso va a depender de la decision del programar Eso si tenemos que implementarlo tenemos que hacerlo con mucho cuidado para no exponer los detalles de implementación
Son objetos que tienen un límite de extensión al crearse No hay una palabra específica para declarar un arreglo Se pueden considerar como instancias o listas aunque no lo sea
Como declarar un array?
int[] a; int a[];
int[] a = new int[10] int[] b = {5,4,2,1}
Como acceder a los elementos de un arreglo??
Puedo ingresar a la posición de mi interés de manera indexada
Limitaciones de los arrays
Cambiar el tamaño del array La data del arreglo están contiguas es decir si tengo un arrays ya con valores pero si necesito que esté ordenado e ingreso un numero generará un conflicto.
Matrices
Es un arreglo bidimensional o un arreglo de arreglos.
int [][] nums = new int[5][4]
Una estructura de datos lineal cada nodo es un objeto separado y no está secuenciado en una memoria.
Una estructura de datos dinámica:
El número de nodos no es fijo Puede crecer o decrecer la cantidad de elementos Una aplicación que va a linear con una cantidad no fija de elementos debería usar listas
Un nodo contiene un campo para los datos y otro para la dirección de memoria el último nodo apunta a null
- Explicación de las listas enlazadas
-Insertar elemento