generische LinkedList nach Häufigkeit der Elemente füllen

bradig

Aktives Mitglied
Hi
ich habe ein kleines Problem.
Ich möchte eine generische LinkedList nach Häufigkeit der Elemente,die ich einfügen möchte füllen.
Bp: Bei 1, 1 , 4 , 2 , 1, 2 würde am Ende 1 , 2 ,4 ist die LinkedList stehen,da 1 (3 mal vorkommt),2(2 mal vorkommt) und 4 (nur 1 mal vorkommt).

wie man eine generische LinkedList implementiert weiß ich schon,aber Elemente nach Häufigkeit in die LinkedList einfügen weiß ich nicht.

Bitte un Hilfe

Herzlich

Bradig
 

Kababär

Top Contributor
Hi,

einfach, aber eventuell nicht so elegant, wäre durch die Liste zu iterieren und in einer Hashmap als key den Wert des aktuell betrachteten Element einzutragen und als value die gezählten Häufigkeiten.
Danach eine LinkedList bauen aus den Keys der Hashmap abhängig von den gezählten Häufigkeiten.


Hashmap:
1 -> 3
2 -> 2
4 -> 1

Du könntest dir auch eine generische Klasse dafür bauen, aber eine Hashmap ist imho schneller. Auch wenn es eventuell nicht die schnellste Art ist.
Wobei es ja eigentlich auch reichen sollte, durch deine Anfangsliste zu iterieren und zuerst den Wert der größten Häufigkeit als erstes Element in eine neue Liste speicherst, den Wert mit der zweitgrößten Häufigkeit als zweites Element einträgst, etc.
Eine lokale Variable bspw count sollte die Häufigkeit zählen.
Im Prinzip wäre dies ein mal schneller, da du dir die Iterationen durch die Hashmap sparst.
 
Zuletzt bearbeitet:

mrBrown

Super-Moderator
Mitarbeiter
Im Prinzip wäre dies ein mal schneller, da du dir die Iterationen durch die Hashmap sparst.

Dafür muss man n mal über die Liste iterieren, das müsste afaik langsamer sein, als n mal der HashMap hinzufügen und dann einmal über diese zu iterieren.

Ich möchte eine generische LinkedList nach Häufigkeit der Elemente,die ich einfügen möchte füllen.
Bp: Bei 1, 1 , 4 , 2 , 1, 2 würde am Ende 1 , 2 ,4 ist die LinkedList stehen,da 1 (3 mal vorkommt),2(2 mal vorkommt) und 4 (nur 1 mal vorkommt).

wie man eine generische LinkedList implementiert weiß ich schon,aber Elemente nach Häufigkeit in die LinkedList einfügen weiß ich nicht.

Sollen der Liste die Elemente schon sortiert hinzugefügt werden, oder soll die Liste selbst die Elemente sortieren, je nachdem wie oft sie hinzugefügt werden?
 

bradig

Aktives Mitglied
die Elemente sollen in der Liste nicht sortiert hinzugefügt werden.
bei 1 ,1,4,2,4,2,4,2,4 hätten wir zum Beispiel 4 ,2,1.
 

mrBrown

Super-Moderator
Mitarbeiter
Du speicherst zu jedem ListenElement intern seinen Wert und seine Häufigkeit.
Wenn dann eins hinzugefügt wird, und es schon vorhanden ist, wird die Häufigkeit inkrementiert, und das Element nach vorne geschoben, wenn es jetzt häufiger ist als das (uU auch mehrere) daneben, damit es an der richtigen Stelle steht.
Wenn es nicht vorkommt wird es hinten an die Liste angehängt.
 

Kababär

Top Contributor
Da gebe ich dir recht mrBrown.
Eine inkrementierug könnte man so bewerkstelligen:

Code:
map.put(key, map.get(key) + 1);

Positionen nach einer Änderung anpassen sollte mehr oder weniger trivial sein.
 

mrBrown

Super-Moderator
Mitarbeiter
Da gebe ich dir recht mrBrown.
Eine inkrementierug könnte man so bewerkstelligen:

Code:
map.put(key, map.get(key) + 1);

Positionen nach einer Änderung anpassen sollte mehr oder weniger trivial sein.

Java:
map.compute(key, (k, v) -> ++v)

oder besser, dann hat man Neu hinzufügen mit drin:

Java:
map.merge(key, 1, (k, v) -> ++v)


Allerdings könnte man sich das leichter machen, indem man in den Nodes der LinkedList direkt die Häufigkeit speichert, dann spart man sich den Umweg über die Map
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
H linkedlist generische klassen Java Basics - Anfänger-Themen 169
I Generische Funktion Java Basics - Anfänger-Themen 3
B Generische Typen für dynamisches Formular Java Basics - Anfänger-Themen 3
A Generische Klassen/Interface Java Basics - Anfänger-Themen 1
H Generische Konstruktor Java Basics - Anfänger-Themen 12
Kirby.exe Generische Objekt Instanz erstellen Java Basics - Anfänger-Themen 14
D Generische Klasse Java Basics - Anfänger-Themen 6
M Datentypen Generische Datentypen - Syntax Java Basics - Anfänger-Themen 25
O Generische Typen Java Basics - Anfänger-Themen 9
M Generische Klassen "FlaschenRegal" Java Basics - Anfänger-Themen 13
Queiser Datentypen 2 generische Datentypen für eine Schnittstelle Java Basics - Anfänger-Themen 1
M Generische Liste aus Comparable-Objekten Java Basics - Anfänger-Themen 6
J Sortierte generische Liste Java Basics - Anfänger-Themen 1
D statische generische Methoden Java Basics - Anfänger-Themen 3
S Wie muss ich die Generische Methode schreiben? Java Basics - Anfänger-Themen 6
M Methoden Generische Klasse - ändern einzelner Attributwerte Java Basics - Anfänger-Themen 2
S generische methode mit verschiedenen datentypen Java Basics - Anfänger-Themen 3
N Generische Schnittstellen Java Basics - Anfänger-Themen 2
D Generische Typen Java Basics - Anfänger-Themen 20
S Erste Schritte Generische Klassen sind toll ....aber warum sollte ich das je benutzen? Java Basics - Anfänger-Themen 3
L Generische Liste Java Basics - Anfänger-Themen 4
B Generische Queue programmieren Java Basics - Anfänger-Themen 5
S Generische Methode soll Objekte als Parameter erlauben die bestimmtes Interface implementieren^ Java Basics - Anfänger-Themen 9
A Probleme mit MergeSort Generische Liste Java Basics - Anfänger-Themen 0
A Generische Methode Java Basics - Anfänger-Themen 4
H Collections List in List<SpecificType> als stat. generische Methode zurückgeben Java Basics - Anfänger-Themen 4
J Probleme mit static generische Klasse Java Basics - Anfänger-Themen 6
M Generische Liste Java Basics - Anfänger-Themen 4
B Generische Methode Java Basics - Anfänger-Themen 2
B Generische Klasse Java Basics - Anfänger-Themen 7
B Generische Methoden Java Basics - Anfänger-Themen 8
F Collections Generische Klasse/Methoden Java Basics - Anfänger-Themen 19
L Generische Warteschlange Java Basics - Anfänger-Themen 8
A Generische Datentypen Java Basics - Anfänger-Themen 8
bluerob generische ArrayList -> erbende Objekte auslesen Java Basics - Anfänger-Themen 24
L Generische Containerklasse Java Basics - Anfänger-Themen 9
V Methoden Umwandlung in generische Methode Java Basics - Anfänger-Themen 8
A Generische Collections und Vererbung Java Basics - Anfänger-Themen 2
S Generische HashMap Java Basics - Anfänger-Themen 2
M Klassen Generische Klassen, Personen und Gruppen Java Basics - Anfänger-Themen 6
L Generische ArrayList, CastProblem Java Basics - Anfänger-Themen 2
W generische Module Java Basics - Anfänger-Themen 2
S Generics und "generische Feldzuweisungen" Java Basics - Anfänger-Themen 5
C unterschied generische typen und supertypen als methodenparameter Java Basics - Anfänger-Themen 3
D Datentypen Generische Collections und Warnings Java Basics - Anfänger-Themen 8
F Generische Methoden Problem Java Basics - Anfänger-Themen 5
E Generische Arrays durch Typecast mit Object-Array Java Basics - Anfänger-Themen 11
K Generische Klasse mit innerer Klasse | Problem mit Array Java Basics - Anfänger-Themen 6
B Was passiert, wenn eine konkrete Klasse von generische Klasse erbt? Java Basics - Anfänger-Themen 14
B Generische Vererbung was ist der Unterschied? Java Basics - Anfänger-Themen 4
W Generische Klassen Java Basics - Anfänger-Themen 3
W Generische Klassen und Casting Java Basics - Anfänger-Themen 6
F Generische Typen auch für statische Methoden? Java Basics - Anfänger-Themen 13
J array über generische arraylist Java Basics - Anfänger-Themen 7
B instanceof Prüfung für generische Typen Java Basics - Anfänger-Themen 5
N 2 dimensionale generische Arrays Java Basics - Anfänger-Themen 9
H Statische generische Methode Java Basics - Anfänger-Themen 2
G Frage zum Ungang mit Generische Datentypen Java Basics - Anfänger-Themen 4
0x7F800000 generische arrays mal wieder )-; Java Basics - Anfänger-Themen 6
D generische methode <T> void . Java Basics - Anfänger-Themen 9
J Generische Methoden Java Basics - Anfänger-Themen 6
G Doppelt verkettete, generische Liste Java Basics - Anfänger-Themen 11
S Parameterübergabe: Generische Klasse Java Basics - Anfänger-Themen 4
S generische Felder Java Basics - Anfänger-Themen 2
P Generische Klasse Java Basics - Anfänger-Themen 8
C Generische Klassen, das erste Mal. Java Basics - Anfänger-Themen 8
F Generische Methode - was bringt der Wildcard Operator? Java Basics - Anfänger-Themen 7
F Generische Liste von generischen Objekten. Java Basics - Anfänger-Themen 3
H generische Methoden Java Basics - Anfänger-Themen 5
N generische HashMap und Iterator Java Basics - Anfänger-Themen 2
H generische Bausteine, heterogene Datenstrukturen Java Basics - Anfänger-Themen 2
J generische klassen neue Instanz Java Basics - Anfänger-Themen 5
H Generische Klassen. Java Basics - Anfänger-Themen 16
A LinkedList implementieren Java Basics - Anfänger-Themen 32
M Wie kann ich den Index i von einer LinkedList überprüfen? Java Basics - Anfänger-Themen 36
Düsseldorf2002 Datentypen Verschachtelte LinkedList Java Basics - Anfänger-Themen 5
Düsseldorf2002 Datentypen Zwei dimensionale LinkedList Java Basics - Anfänger-Themen 8
B Warteschlange erstellen mit LinkedList ? Java Basics - Anfänger-Themen 6
U Objekte in LinkedList löschen und editieren Java Basics - Anfänger-Themen 14
G Java LinkedList remove Methode Java Basics - Anfänger-Themen 5
G Java LinkedList Java Basics - Anfänger-Themen 6
U Objekte in einer LinkedList sortieren Java Basics - Anfänger-Themen 5
S Eigene LinkedList Klasse Java Basics - Anfänger-Themen 4
S Mit einer LinkedList vorwärts und rückwärts iterieren Java Basics - Anfänger-Themen 6
S Endlosschleife beim Ausgeben einer LinkedList Java Basics - Anfänger-Themen 2
G Java LinkedList Java Basics - Anfänger-Themen 3
B LinkedList add-Methode Java Basics - Anfänger-Themen 10
F Windows in LinkedList registrieren Java Basics - Anfänger-Themen 3
A Hilfe, LinkedList Java Basics - Anfänger-Themen 2
H Knoten-Reihenfolge einer LinkedList invertieren Java Basics - Anfänger-Themen 11
O Hashmap, ArrayList, LinkedList Java Basics - Anfänger-Themen 7
P Quellcode LinkedList Java Basics - Anfänger-Themen 2
F Collection Aufgabe mit LinkedList Java Basics - Anfänger-Themen 3
N Hilfe bei verknüpfter Liste - Linkedlist Java Basics - Anfänger-Themen 11
P Datentypen LinkedList: Kopie behält Referenz? Java Basics - Anfänger-Themen 3
C ArrayList vs LinkedList vs ? Java Basics - Anfänger-Themen 15
C LinkedList vs. ArrayList Java Basics - Anfänger-Themen 15
O LinkedList zu ArrayList Java Basics - Anfänger-Themen 4
M LinkedList elemente löschen Java Basics - Anfänger-Themen 2
L Problem mit LinkedList Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben