Middle
Jaká je složitost operace push_back u std::vector?
sobes.tech AI
Odpověď od AI
Průměrně je amortizace O(1).
V nejhorším případě O(N), kde N je aktuální velikost vektoru. To se stává při přerozdělení paměti, když aktuální kapacita vektoru nestačí pro nový prvek. V takovém případě se vytvoří nový buffer větší kapacity, prvky se do něj zkopírují a starý buffer se uvolní.