Practica Lab 3

Páginas: 8 (1963 palabras) Publicado: 1 de octubre de 2015
LABORATORIO 03
APELLIDOS Y NOMBRES…………………………………………………………….
CÓDIGO ……………………………………………………NOTA …………………..

ABSTRAC SET . HASHSET. TREESET
LA INTERFAZ SET
La interface SET es la encargada del tratamiento de conjuntos en el api de Java. Un conjunto en Java es una colección de elementos que, como el conjunto en matemáticas, no permite elementos duplicados dentro de ella y no tiene orden entre suselementos. Más formalmente, no permite elementos e1, e2 tales que: e1.equals(e2) sea true.
Es una colección que no permite elementos repetidos. La interfaz Set contiene sólo métodos heredados de Collection y aumenta la restricción de elementos duplicados. Esta interfaz tiene un contrato con un comportamiento más específico en operaciones con equals y hashCode, permitiéndo a instancias de esta interfazser comparadas significativamente aún si el tipo de implementación difiere. Dos instancias de Set son iguales si ellas contienen los mismos elementos.
Java dispone de 3 implementaciones generales de Set: HashSet, TreeSet y LinkedHashSet.
HASHSET
 HashSet es la clase que vamos a utilizar para implementar la interfaz SET ya que es quizás la más usada para implementar esta interface. Esta claseimplementa la interface SET basada en una tabla hash (a modo resumen para nosotros una tabla hash será una tabla que se construye en base a claves que permiten localizar objetos. Por ejemplo un DNI podría ser la clave para localizar a una persona. En esta clase la clave da la posición del objeto en la tabla, permitiendo un acceso directo al elemento. Este acceso directo hace que esta clase sea idealpara búsqueda, inserción y borrado de elementos en base a una clave o llave. No hay garantía de orden (por ejemplo si hacemos un recorrido de los objetos dentro de un HashSet no siempre los obtendremos en igual orden) y se permite el uso de elementos nulos.

TREESET
 TreeSet es la clase que vamos a utilizar como implementación de la interface SORTEDSET. Esta implementación está basada en el uso deuna estructura de árbol permitiendo que los elementos estén ordenados bien por orden natural o bien por orden total definido por un Comparator y por tanto haciendo muy rápido las búsquedas, inserciones y borrados de sus elementos. A efectos prácticos, la diferencia principal de esta clase con HashSet es que sus elementos están ordenados. Otra diferencia es la estructura de datos que sirve paraalmacenar datos, en un caso una tabla y en otro un árbol.

TreeSet, guardar sus elementos en un árbol, ordenando sus elementos en base a sus valores, y por lo tanto es más lento que un HashSet.
LINKHASHSET
Por otro lado es implementada por una tabla Hash con una lista enlazada a través de ella, ordenando sus elementos en base a como han sido insertados. LinkedHashSet tiene un costo más alto derendimiento que un HashSet.
Operaciones Básicas:
La operación size, retorna el número de elementos en el Set, su cardinalidad.
El método isEmpty, hace exactamente lo que su nombre indica, verifica si se encuentra vacía.
El método add, aumenta el elemento especificado, si este no se encuentra presente y retorna un booleano indicando si este fue o no insertado.
Así mismo el método remove elimina elelemento especificado del Set si está presente. Retorna verdadero o falso si el elemento está o no presente.
El método iterator retorna un Iterator sobre el Set.

public class BuscarDuplicados {
Set s = new HashSet();
for (String cadena : args)
if (!s.add(a))
System.out.println("Duplicados encontrados: " + cadena);

System.out.println(s.size() +" palabras diferentes: " + s);
Nótese que el código se refiere a Collection por su interfaz Set al contrario de su implementación HashSet. Esto es muy recomendado, debido a que esto nos da la flexibilidad de cambiar las implementaciones simplemente cambiando el constructor. Si alguna de las variables usada para almacenar la colección o los parámetros usados para pasarlo por la implementación de...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • practica 3 lab. fisica
  • Practica 3 Lab Quimica
  • Practica 3 lab reporte
  • Practica 3 lab fisica
  • LAB practica 3
  • Lab Quimica Practica 3
  • Practica 3 de Lab de procesos FIME
  • lab de termodinámica Practica 3 Temperatura

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS