Download Differential Calculus

Document related concepts
no text concepts found
Transcript
Estructuras de Datos en
Java
M.C. Juan Carlos Olivares Rojas
1
Paquete de Utilidades
• Java cuenta con una serie de APIs para el
manejo de estructura de datos básicas,
dichos componentes se encuentran en el
paquete java.util
• La clase Vector permite tener un arreglo
de cualquier tipo de dato, el cual crece de
manera automática.
2
Vector
• En el constructor se puede indicar el
tamaño inicial del vector:
• Vector v = new Vector(10);
• De manera predeterminada este crece
conforme al tamaño asignado.
3
Vector
• Para agregar elementos se utiliza el
método addElement(Object).
• Para eliminar elementos se utiliza el
método removeElement(Object);
• Para obtener
firstElement();
el
primer
elemento:
4
Vector
• Para obtener
lastElement();
el
último
elemento:
• Para verificar si se encuentra vacío:
isEmpty();
• Para verificar si se encuentra un elemento
en particular: contains(Object);
5
Vector
• indexOf(Object); sirve para encontrar la
posición de un objeto en particular.
• trimToSize(); permite recortar el tamaño
de un vector hasta donde se tenga el
último elemento.
• size(); indica el tamaño actual y el método
capacity(); hasta donde puede crecer el
vector sin duplicarse.
6
Enumeration
• El objeto Enumeration permite tener un
objeto iterador para la manipulación de
muchos tipos de objetos.
• Enumeration enum = v.elements();
• enum.hasMoreElements(); permite saber si
se tienen más elementos.
7
Enumeration
• enum.nextElement(); obtiene el siguiente
elemento si existe, de lo contrario
devuelve
una
Excepción:
NoSuchElementException.
• Tambien Java cuenta con una clase Pila:
• Stack s = new Stack();
8
Enumeration
• Se cuenta con los siguientes métodos:
• s.push(obj); para agregar elementos
• s.pop(); para quitar elementos
• s.peek(); para observar el elemento de la
cima
• s.empty(); determina si la pila está vacía
• s.search(obj); para buscar un elemento.
9
Dictionary-Hashtable
• La clase Dictionary es una clase abstracta
(no se pueden crear objetos de dicha
clase) que sirve de interfaz a la clase
Hashtable.
• Las tablas permiten almacenar una clave y
un
valor
para
ser
utilizadas
posteriormente.
10
Hashtable
• Se construye un objeto como:
• Hashtable tabla = new Hashtable();
• Los métodos de dicha clase son:
• Object val = tabla.put(nombre, empleado);
en donde nombre es un String y empleado
un objeto.
11
Hashtable
• Si no hay un valor para la clave
especificada se devuelve un null. Si ya
existe una clave/objeto se devuelve el
mismo objeto.
• Object val = tabla.get(clave); ayuda a
recuperar un elemento en particular.
12
Hashtable
• Para eliminar elementos se utiliza:
• Object val = tabla.remove(clave); si no se
puede eliminar el elemento se devuelve
null, en caso contrario se devuelve la
referencia del elemento.
• tabla.isEmpty(); nos sirve para determinar
si está vacía la tabla.
13
Hashtable
• tabla.containsKey(clave); para determinar
si se cuenta con esa clave en el
diccionario.
• tabla.clear(); vacía toda la tabla
• tabla.elements(); para obtener un objeto
Enumeration.
tabla.keys();
tambien
devuelve una enumeración pero de las
claves nada más.
14
¿Preguntas, dudas y comentarios?
15