Hi folks.
Also steinigt mich und esst mich auf, weil ich euch mit soeinem evtl. einfachen unbedeutendem Problem belästige, aber ich habe aktuell ein Brett vorm Kopf!
Folgendes Problem:
Ich habe nen Vector, der String-Elemente enthält. Davon verschiedene in verschiedener Häufigkeit.
Nun möchte ich die Elemente so sortieren, dass das häufigste Element an die erste Stelle des Vectors verschoben wird, und alle doppelten von diesen anschließend gelöscht werden. Das zweihäufigste Element an 2. Stelle usw....
Beispiel:
Nun sieht man, dass "blub" am häufigsten, also 3 mal vorkommt, "blub" soll also an die erste Stelle des vectors verschoben werden.
"pa" an die zweite Stelle und so fort, so dass mein Vector am Ende so aussieht:
humm("blub","pa","sim","fi")
Und das bekomm ich einfach nich hin.
Immo. siehts so aus:
aber das ist merkwürdiger Weise ne Endlosschleife^^.
Hoffe mir kann jemand weiter helfen, mfg
Also steinigt mich und esst mich auf, weil ich euch mit soeinem evtl. einfachen unbedeutendem Problem belästige, aber ich habe aktuell ein Brett vorm Kopf!
Folgendes Problem:
Ich habe nen Vector, der String-Elemente enthält. Davon verschiedene in verschiedener Häufigkeit.
Nun möchte ich die Elemente so sortieren, dass das häufigste Element an die erste Stelle des Vectors verschoben wird, und alle doppelten von diesen anschließend gelöscht werden. Das zweihäufigste Element an 2. Stelle usw....
Beispiel:
Code:
static Vector<String> humm = new Vector();
public static void adden()
{
humm.add("blub");
humm.add("sim");
humm.add("pa");
humm.add("blub");
humm.add("blub");
humm.add("pa");
humm.add("fi");
}
"pa" an die zweite Stelle und so fort, so dass mein Vector am Ende so aussieht:
humm("blub","pa","sim","fi")
Und das bekomm ich einfach nich hin.
Immo. siehts so aus:
Code:
public static void sort()
{
count=1;
maxcount=1;
for(int i=0;i<humm.size();i++)
{
for (int a=i+1;a<humm.size();a++)
{
if (humm.elementAt(i).equals(humm.elementAt(a)))
{
count++;
humm.remove(a);
}
}
if (count>=maxcount)
{
maxcount = count;
humm.add(i, humm.elementAt(i));
}
System.out.println(humm.elementAt(i));
}
}
aber das ist merkwürdiger Weise ne Endlosschleife^^.
Hoffe mir kann jemand weiter helfen, mfg