Zum Inhalt springen

C++ - In Maps ein Element hinten einfügen


Empfohlene Beiträge

Geschrieben

Hey,

wie kann ich in eine Map ein Element hinten einfügen? Wenn ich einen Iterator habe, der auf das Ende der Map zeigt, wird das Element dennoch nicht an das Ende der Map eingefügt.

Wie kann ich nun realisieren, dass ich ein Element in das Ende einer Map einfügen kann?

MfG Artery

Geschrieben (bearbeitet)

Moin Artery,

Wie kann ich nun realisieren, dass ich ein Element in das Ende einer Map einfügen kann?

Ähm... der Sinn einer Map ist Dir schon klar, oder? Da gibt es kein "hinten" oder "vorne". Sie selber übernimmt für Dich die Sortierung, damit sie immer die ideallen Zugriff hat ohne ewig zusuchen. ;)

Edith meint: Nimm einen Vector wenn Du "hinten" und "vorne" brauchst. :)

Bearbeitet von Hexagon
Geschrieben

Als ich heute morgen nochmal herumprobiert habe, ist mir dann leider auch aufgefallen, dass ja alles schon sortiert wird :D Das blöde .insert hatte mich dann verwirrt :D

Das ist jetzt nun leider verdammt schlecht :(, weil auf Liste umsteigen könnte im jetzigen Stand ganz schön haarig werden, **** =( :D

Geschrieben
Moin Artery,

Ähm... der Sinn einer Map ist Dir schon klar, oder? Da gibt es kein "hinten" oder "vorne". Sie selber übernimmt für Dich die Sortierung, damit sie immer die ideallen Zugriff hat ohne ewig zusuchen. ;)

Edith meint: Nimm einen Vector wenn Du "hinten" und "vorne" brauchst. :)

Ein Vector wäre hier wahrscheinlich völlig deplaziert... würdest du wissen wie ein vector funktioniert dann würdest du mir zustimmen wenn ich sage vorne einfügen ist der worse-case..

da er den gesamten vector um ein template des inhalts verschiebt.. ggf. neuen speicher allokiert und das halt sehr sehr langsam ist wenn er alles umkopieren muss etc..

Was ich dir raten würde wäre eine dequeue empfehlen oder wenn du immer nur auf das letzte eingefügte Element zuerst zugreifen willst einen stack ;)

Als ich heute morgen nochmal herumprobiert habe, ist mir dann leider auch aufgefallen, dass ja alles schon sortiert wird :D Das blöde .insert hatte mich dann verwirrt :D

Das ist jetzt nun leider verdammt schlecht :(, weil auf Liste umsteigen könnte im jetzigen Stand ganz schön haarig werden, **** =( :D

schreib dir eine methode in der du auf deine liste zugreifen kannst wie auf eine map :) ist nicht so schwer

Geschrieben
Ein Vector wäre hier wahrscheinlich völlig deplaziert... würdest du wissen wie ein vector funktioniert dann würdest du mir zustimmen wenn ich sage vorne einfügen ist der worse-case..

da er den gesamten vector um ein template des inhalts verschiebt.. ggf. neuen speicher allokiert und das halt sehr sehr langsam ist wenn er alles umkopieren muss etc..

Was ich dir raten würde wäre eine dequeue empfehlen oder wenn du immer nur auf das letzte eingefügte Element zuerst zugreifen willst einen stack ;)

Interessantes Paper zu diesem Thema, denn dein Tipp sollte kritisch hinterfragt werden. Die Indirektionen, durch verkettetet Elemente, können dich schnell viel mehr Zeit kosten, als, vor allem wenn die Daten noch im Cache sind.

schreib dir eine methode in der du auf deine liste zugreifen kannst wie auf eine map :) ist nicht so schwer

Mit einer eigenen Hashing Funktion, gibt bestimmt leichtere Aufgaben.

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...