Zählen der vorkommen der Elemente im array? (Java)

Ich habe gearbeitet, versucht, herauszufinden, diesen Algorithmus für über 6 Stunden jetzt und kann nicht scheinen, um zu einer Lösung zu kommen. Ich versuche zu zählen der vorkommen von Elementen in einem array und können zwei weitere separate arrays. Eine für die einzigartige Instanzen, und eine für wie oft diese Instanzen Auftritt. Ich fand einige andere denkt hier über die array-Listen und hashMaps, aber ich bin nur in der Lage, arrays verwenden.

Zum Beispiel habe ich dieses array (bereits sortiert):

{cats, cats, cats, dog, dog, fish}

Ich versuche, ein array für die Instanzen, also:

{cats, dog, fish}

Und schließlich, wie oft diese Fälle vorkommen:

{3, 2, 1}

Hier ist der code, den ich bisher:

public void findArrs( String[] words )
{
  int counter = 1;
  for(int i = 0; i < words.length - 1; i++){
  if(!(words[i].equals(words[i+1]))){
  counter++; 
  }
 }

 String[] unique = new String[counter];
 int[] times = new int[counter];

 for(int i = 0; i < words.length; i++){

   }    
}

Dies ist der gesamte code, ich habe nach all meinen versuchen.

Verwenden Sie zwei for-Schleifen, machen Sie zuerst eine Kopie des Objekts. erste Schleife, die ersten Namen, die in einer inneren Schleife, Anzahl der vorkommen. und push-to-new-Array. Halten, bis Sie getan haben alle unterschiedliche Werte.
Ich machte einen für den look, der läuft durch den sortierten array und Wann schaltet es auf etwas anderes I Inkrementieren einen Zähler und am Ende, das ist die Länge der einzigartigen und Instanzen-Arrays. Aber ich komme nicht weiter, wie bewegen sich die Elemente der sortierten array in diese beiden.
Ich habe nur den editierten post mit meinem code.

InformationsquelleAutor helloMundo | 2014-01-20

Schreibe einen Kommentar