Ejercicio 1 a) Dado un grafo no dirigido, con vertices y arcos rotulados con números enteros. Hacer un método que devuelva un mapeo de enteros con enteros, donde la clave es la parte conexa a la que pertenece el subgrafo y el valor la suma de los rótulos de los arcos. Suguiere realizar con DFS b) Qué cambiarias en la implementación anterior para que el valor sea el arco de menor peso del subgrafo? Comentar con tus palabras. c) Cuál implementacíon usarias para cada ED utilizadas en el inciso a)? Justificar adecuadamente. Ejercicio 2 a) Insertar en un árbol 2-3, los números 1,2,3,4,5 y 6. Comparar con un ABB. Diferencias. b) Cuándo implementarias un mapeo con arbol B+ y cuando con ABB? c) Dar las interfaces y clases para implementar un 2-3. Ejercicio 3 a) Arbol general. Interfaz y clases para implementarlo (arbol y nodos). Las escribir solo los atributos y constructores. No metodos. b) Agregar un metodo a la clase Arbol, el cual devuelva verdadero si el arbol en si es propio (cada nodo tiene 0 o 2 hijos). Tiene acceso total a la ED. c) Tiempo de ejecución del metodo anterior. Ejercicio 4 a) Ventajas de implementar mapeo con tabla Hash. Que es y para que sirve el factor de carga? b) (Da seis entradas clave-valor, donde la clave es un número hash) Mostrar graficamente como quedaria una tabla hash al insertar dichos elementos. La funcion de hash es h(x) = x mod N, N el tamaño del arreglo de buckets. Mostrar para hash abierto y hash cerrado. Para las colisiones utilizar el metodo lineal. Ejericio 5 a) Que es en java una excepción?. b) MUestra dos fragmentos de código con la misma logica (mostrar por pantalla un arreglo) el primer metodo tira la excepcion ArrayBoundaryNoseque, mientras que en el segundo hace manejo de la excepcion, para atraparla si se genera el error. Pregunta como afecta al cliente la implementación de cada metodo.