tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
6
ZUGRIFFE
2556
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    d2mike d2mike ist offline Mitglied Gold
    Registriert seit
    Jan 2005
    Beiträge
    161
    Hallo Leute!
    Könnt ihr mir tipps geben wie ich die Häufigkeit von Array-Elementen berechnen kann?

    PHP-Code:
    5.0
    5.0
    5.0
    6.4031242374328485
    7.810249675906654
    7.810249675906654
    9.219544457292887 
    Ausgabe soll so aussehen:
    PHP-Code:
    Häufigkeit3
    6
    ,4...| Häufigkeit1
    7
    ,8...| Häufigkeit2
    9
    ,2...| Häufigkeit
    danke für eure Hilfe!

    Michael
     

  2. #2
    Registriert seit
    Jun 2002
    Ort
    Saarbrücken (Saarland)
    Beiträge
    9.886
    Blog-Einträge
    29
    Hallo!

    Schau mal hier:
    Code java:
    1
    2
    3
    4
    5
    6
    7
    8
    
    Double[] numbers = { 5.0, 5.0, 5.0, 6.4031242374328485, 7.810249675906654, 7.810249675906654,
          9.219544457292887 };
     
        List<Double>  numberList = Arrays.asList(numbers);
        System.out.println(Collections.frequency(numberList, 5.0));
        System.out.println(Collections.frequency(numberList, 7.810249675906654));
        System.out.println(Collections.frequency(numberList, 6.4031242374328485));
        System.out.println(Collections.frequency(numberList, 9.219544457292887));

    Ausgabe:
    Code :
    1
    2
    3
    4
    
    3
    2
    1
    1
    Gruß Tom
     
    Java rocks!
    How to become a good Java Programmer?
    Does IT in Java and .Net
    The only valid measurement of code quality: WTFs / minute
    Blog
    Xing
    Twitter

  3. #3
    deepthroat deepthroat ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Jun 2005
    Beiträge
    8.168
    Hi.

    Du machst einfach eine Iteration über die Arrayelemente und zählst einfach für jedes Element dessen Vorkommen in einer assoziativen Datenstruktur wie z.B. einer HashMap.

    Gruß
     
    If at first you don't succeed, try again. Then quit. No use being a damn fool about it.

  4. #4
    d2mike d2mike ist offline Mitglied Gold
    Registriert seit
    Jan 2005
    Beiträge
    161
    Danke Mann! Werd ich gleich mal ausprobieren!
     

  5. #5
    Avatar von BabyMitSchnully
    BabyMitSchnully BabyMitSchnully ist offline Mitglied Gold
    Registriert seit
    Sep 2003
    Ort
    Rheine
    Beiträge
    139
    Hi,

    ich würde es so machen.

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    
    kopieMeinesArrays = meinArray;
    //Die ist STATIC
    Arrays.sort(kopieMeinesArrays);
     
    int summe = 0
    int letzterWert = 0;
     
    Arrays.sort(kopieMeinesArrays);
     
    for (int i = 0; i < kopieMeinesArrays.lenght();i++)
    {
      if(letzterWert == kopieMeinesArrays[i])
      {
        //Der Wert ist immer noch der gleiche weil Array sortiert ist.
        summe++; 
      }
      else
      {
        letzterWert = kopieMeinesArrays[i];
        //Bevor Summe auf 0 gesetzt wird musst den Wert natürlich rauswerfen zum übernehmen. Zum Beispiel über eine Methode
        setCountOfArrayValue(summe); //Nur eine Beispielfunktion
        //Summe zurücksetzen, damit nächster Wert gezählt werden kann.
        summe = 0;
      }
    }
     
    Sag niemals nie

  6. #6
    Anime-Otaku Anime-Otaku ist offline Mitglied Brillant
    Registriert seit
    Aug 2005
    Ort
    Karlsruhe (Baden-Württemberg)
    Beiträge
    905
    Ich würde das Array mit Arrays.sort sortieren und dann darüber iterieren....dann schauste das nächste an und wenn es auch das selbe ist, zähler hoch...bis man etwas anderes findet...dann rauschreiben oder sonst irgendwie vorhalten.
    Geändert von Anime-Otaku (13.11.06 um 14:46 Uhr)
     
    Wäre super wenn ihr euren Code in dieser Form einfügt:
    Code java:
    1
    
    System.out.println("Hello World");
    [java]System.out.println("Hello World");[/java]
    Für erledigte Threads dürft ihr den "erledigt"-Button anklicken!
    Über Dank freut sich jeder, der euch geholfen hat - ein Klick auf "Danke" kostet ja nicht mal was
    Blog: http://javaeffective.wordpress.com/

  7. #7
    d2mike d2mike ist offline Mitglied Gold
    Registriert seit
    Jan 2005
    Beiträge
    161
    mhm...*grüber*
    versteh ich nicht - kannst mir diese Variante erklären? danke!

    Zitat Zitat von BabyMitSchnully Beitrag anzeigen
    Hi,

    ich würde es so machen.

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    
    kopieMeinesArrays = meinArray;
    //Die ist STATIC
    Arrays.sort(kopieMeinesArrays);
     
    int summe = 0
    int letzterWert = 0;
     
    Arrays.sort(kopieMeinesArrays);
     
    for (int i = 0; i < kopieMeinesArrays.lenght();i++)
    {
      if(letzterWert == kopieMeinesArrays[i])
      {
        //Der Wert ist immer noch der gleiche weil Array sortiert ist.
        summe++; 
      }
      else
      {
        letzterWert = kopieMeinesArrays[i];
        //Bevor Summe auf 0 gesetzt wird musst den Wert natürlich rauswerfen zum übernehmen. Zum Beispiel über eine Methode
        setCountOfArrayValue(summe); //Nur eine Beispielfunktion
        //Summe zurücksetzen, damit nächster Wert gezählt werden kann.
        summe = 0;
      }
    }
     

Ähnliche Themen

  1. Array nach Häufigkeit der Kollisionen ausgeben (Verkettetes Hash-Verfahren)
    Von Lasse2000 im Forum Algorithmen & Datenstrukturen mit Java
    Antworten: 0
    Letzter Beitrag: 21.11.10, 17:59
  2. Array mit normalen Elementen u Hashelementen?
    Von downset04 im Forum CGI, Perl, Python, Ruby, Power Shell
    Antworten: 2
    Letzter Beitrag: 18.10.06, 14:09
  3. Array mit elementen erweitern
    Von FBIagent im Forum C/C++
    Antworten: 3
    Letzter Beitrag: 20.08.06, 05:02
  4. hinzufügen von keys & elementen in ein array
    Von scorpio-php im Forum PHP
    Antworten: 8
    Letzter Beitrag: 26.08.04, 13:36
  5. Zählen von Elementen in einem Array
    Von Subwoover im Forum PHP
    Antworten: 2
    Letzter Beitrag: 02.07.02, 12:56