Zacznij terazZacznij za darmo

Implementacja narzędzia do wykrywania duplikatów transakcji

Dzienniki transakcji finansowych muszą być walidowane, aby upewnić się, że każde ID transakcji jest unikatowe. Twoim zadaniem jest zaimplementowanie metody, która efektywnie sprawdza, czy wśród transakcji znajdują się duplikaty.

To ćwiczenie jest częścią kursu

Optymalizacja kodu w Javie

Zobacz kurs

Instrukcje do ćwiczenia

  • Zainicjalizuj zmienną seen jako pusty obiekt Set.
  • Dodawaj transakcje do seen, jeśli nie zostały jeszcze napotkane.
  • Zwróć odpowiednią wartość logiczną, gdy pętla zakończy się bez znalezienia duplikatu.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

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 ____;
    }
}
Edytuj i uruchom kod