Nur weil ein Element entfernt wird ist vector nicht der falsche Datentyp.
EDIT: Gerade bei kleinen Datentypen ist ein vector so gut wie immer schneller als eine list: C++ benchmark – std::vector VS std::list
Ok ich weiß jetzt natürlich nicht, wie seine datenstruktur am ende aussieht, aber wenn man sich anguckt, dass die anderen extra remove methoden haben... da bieten sich die doch schonmal an.
ich gebe dir recht, dass std::vector schon gut schnell ist... allerdings ist string weder ein kleiner datentyp noch ein pod datentyp.... zwar wird das verschieben in c++11 wesentlich schneller sein, weil einfach std::move benutzt werden kann aber trotzdem langsamer als bei pod datentypen wo einfach memcpy verwendet wird. ich benutze vector eigentlich immer nur wenn ich indexzugriff brauche, oder eine liste die sich nicht verändert(oder nur wenig)
std::list verwende ich eigtnlich auch ziemlich selten... ich würd in den meisten fällen einfach std::unordered_map/set benutzen... die sind auch viel schneller, was das Suchen des elementes angeht... da hab ich das element schon gelöscht, bevor ich den vector auch nur durchsucht habe
------------------
Edit: 1000. Beitrag... juhu *party-smiley*