Wie, um Duplikate zu finden, die in einem java-array?

Ich versuche zu zählen, wie viele doppelte Elemente in einem array.

Beispiel:

[0, 2, 0] would return 2, [0, 0, 0] would return 3, [0, 1, 2] = 0

Bisher habe ich es funktioniert, wenn alle drei Elemente gleich sind, aber ich bin mir nicht sicher, warum es ist die Rückkehr eines weniger als das, was es sollte für 2 Produkte sind die gleichen.

    int equal = 0;

    for(int i = 0; i < recent.length; i++) {
        for(int j = i; j < recent.length; j++) {
            if(i != j && recent[i].equals(recent[j])) {
                equal++;
            }
        }
    }
  • Müssen Sie überdenken das problem.
  • Insbesondere sollten Sie überdenken Sie Ihre definition des Problems. Was genau versuchen Sie zu zählen - wie viele duplizierte Elemente es gibt, oder wie viele Paare von gleichen Elementen gibt es?
  • Investieren Sie etwas Zeit in das Lesen der Dokumentation für HashMap.
  • Was würde [0, 2, 0, 2, 0] zurück - nur eine einzige Zahl? Was würde es sein?
InformationsquelleAutor user1859040 | 2012-12-01
Schreibe einen Kommentar