Estás en:   ArielOrtiz.info > Estructura de datos > Ejercicios: Listas e Iteradores

Ejercicios: Listas e Iteradores

Esta actividad no es para entregar.

Crea la clase edd.util.ListsAndIterators con los métodos que se describen a continuación:

  1. public static <T> List<T> duplicate(List<T> list)

    Escribe el método estático duplicate() que recibe una lista genérica list y devuelve una nueva lista con todos los elementos de list duplicados. Por ejemplo, si la lista de entrada es: [1, 2, 3], la salida sería: [1, 1, 2, 2, 3, 3].

  2. public static <T> List<T> consecute(List<T> list)

    Escribe el método estático consecute() que recibe una lista genérica list y devuelve una nueva lista en donde el primer elemento de list aparece una sola vez, el segundo elemento aparece dos veces, el tercer elemento aparece tres veces, y así sucesivamente. Por ejemplo, si la lista de entrada es: [1, 2, 3, 4], la salida sería: [1, 2, 2, 3, 3, 3, 4, 4, 4, 4].

  3. public static <T> List<T> removeDuplicates(List<T> list)

    Escribe el método estático removeDuplicates() que recibe una lista genérica list y devuelve una nueva lista con los mismos elementos que list pero eliminando los elementos repetidos. Por ejemplo, si la lista de entrada es: [1, 2, 2, 1, 4, 2, 4, 3], la salida sería: [1, 2, 4, 3].

  4. public static Iterator<Integer> pow2(int n)

    Escribe el método estático pow2() que recibe un entero n y devuelve un iterador de enteros que produce las primeras n potencias de dos. Por ejemplo, si la entrada es 4, devuelve un iterador que en su momento producirá 1, 2, 4 y 8. El método remove() del iterador devuelto debe arrojar la excepción UnsupportedOperationException.

  5. public static Iterator<Integer> primes(int max)

    Escribe el método estático primes() que recibe un entero max y devuelve un iterador de enteros que produce todos los números primos menores o iguales a max. Por ejemplo, si la entrada es 10, devuelve un iterador que en su momento producirá 2, 3, 5 y 7. El método remove() del iterador devuelto debe arrojar la excepción UnsupportedOperationException.

  6. public static Iterator<Integer> squares(int[] array)

    Escribe el método estático squares() que recibe un arreglo de enteros array y devuelve un iterador de enteros que produce los valores de array elevados al cuadrado. Por ejemplo, si la entrada es el arreglo [1, 2, 3], devuelve un iterador que en su momento producirá 1, 4 y 9. El método remove() del iterador devuelto debe arrojar la excepción UnsupportedOperationException.

Archivos útiles: