2. Calcule la diferencia entre el pedido más grande y el más pequeño de tipo DELIVERY para cada moneda. Devuelva el resultado para cada moneda. Las monedas en el resultado deben estar en orden ascendente de esta diferencia. /** * Devuelve un mapa del tipo {moneda (en orden ascendente de diferencia) – diferencia entre el pedido más grande y el más pequeño de tipo DELIVERY para esa moneda}. * Si para alguna moneda solo hay un pedido, entonces es tanto el más grande como el más pequeño y la diferencia es 0. * Ejemplo de datos de entrada: * [ * Order(DELIVERY, "EUR", 2000), * Order(DELIVERY, "USD", 15), * Order(DELIVERY, "RUB", 200), * Order (PICKUP, "RUB", 1250), * Order (DELIVERY, "USD", 35), * Order (PICKUP, "USD", 55), * Order (DELIVERY, "RUB", 100) * ] * * Resultado esperado: * ["EUR" -> 0.0, "USD" -> 20.0, "RUB" -> 100.0] * */ Map<String, Double> getMaxMinusMinDeliveryMapByCurrency(List<OrderData> orderDataList) { }
Java
¿Cuál es la velocidad de búsqueda en HashMap (promedio y peor caso)?
Tareas en Java 1. Escribe la implementación del método: /** * @param a – array de números, la longitud del array puede ser mayor a 10 millones. * @return array de números, en los que no hay duplicados. El orden de los números en el array original debe mantenerse. Se debe dejar el último elemento en caso de duplicados, por ejemplo, para {2,1,4,2,3} la solución correcta es {1,4,2,3}, y no {2,1,4,3} En caso de que en el array de entrada haya un elemento menor que 0, se debe generar un error. Por ejemplo, para {2,3,-1,5} el procesamiento debe terminar con un error. */ public static double[] task(double[] a) { }
¿Por qué establecer el tamaño del primer array (temp) igual a la longitud del array de entrada?
¿Se puede heredar un enum en Java?
¿Qué es una colisión en HashMap?
¿Throwable es una clase o una interfaz?
¿Dónde exactamente puede ocurrir un error sin volatile en Double-Checked Locking?
¿Cómo funciona LEFT JOIN?
Cuéntame sobre la estructura de datos HashMap
¿Cuál es la velocidad de búsqueda en LinkedList (promedio y peor caso)?
¿Para qué sirven dos arreglos (temp y result)?
¿Por qué en el código la comparación del tipo de pedido se realiza mediante != en lugar de equals?
¿Qué se debe cambiar en este código para que la implementación del patrón Singleton sea segura para hilos y correcta? public class Singleton { private static final Singleton instance; public Singleton() { } public Singleton getInstance() { if (instance != null) { synchronized (instance) { if (instance == null) { instance = new Singleton(); } } } return instance; } }
¿Cuál es el contrato entre hashCode y equals?
¿Qué es un árbol rojo-negro?
¿Cómo se podría haber modificado la solución usando 1 colección en lugar de 2 (seen y temp)?
Cuéntame sobre la API de Streams — qué es y cómo la usas
¿Cómo solucionar el problema con el monitor synchronized(instance) cuando instance == null?
Cuente la jerarquía de excepciones en Java