Implementar un buscador de transacciones duplicadas
Los registros de transacciones financieras deben validarse para asegurar que cada ID de transacción sea único. Tu tarea es implementar un método que compruebe de forma eficiente si existen IDs de transacción duplicados.
Este ejercicio forma parte del curso
Optimizing Code in Java
Instrucciones del ejercicio
- Inicializa la variable
seencomo unSetvacío. - Añade transacciones a
seensi no las has encontrado antes. - Devuelve el valor booleano adecuado si el bucle termina sin encontrar duplicados.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
public class Main {
public static void main(String[] args) {
TransactionProcessor processor = new TransactionProcessor();
String[] transactions = {
"TXN001", "TXN002", "TXN003", "TXN001",
"TXN004", "TXN005", "TXN003", "TXN006"
};
boolean hasDuplicates = processor.hasDuplicateTransactions(transactions);
if (hasDuplicates) {
System.out.println("Duplicate transactions detected!");
} else {
System.out.println("All transactions are unique.");
}
}
}
class TransactionProcessor {
public boolean hasDuplicateTransactions(String[] transactionIds) {
// Initialize an empty HashSet
____ seen = new ____<>();
for (String transactionId : transactionIds) {
if (seen.contains(transactionId)) {
return true;
} else {
// First time seeing this transaction, add it to the set
seen.____(____)
}
}
// Return true/false if no duplicates found
return ____;
}
}