Junior
Ποια είναι η πολυπλοκότητα της διαγραφής ενός στοιχείου από το τέλος ενός διανύσματος σε C++;
sobes.tech AI
Απάντηση από AI
Αθροιστικά O(1).
Κατά την αφαίρεση ενός στοιχείου από το τέλος του διανύσματος (pop_back()), στις περισσότερες περιπτώσεις δεν πραγματοποιείται μετακίνηση ή αντιγραφή άλλων στοιχείων. Η μόνη ενέργεια είναι η μείωση του μεγέθους του διανύσματος.
Η αλλαγή στο μέγεθος του διανύσματος (capacity) συμβαίνει μόνο όταν είναι απαραίτητη η επανατοποθέτηση μνήμης (αν το διάνυσμα ήταν γεμάτο και στη συνέχεια αφαιρέθηκαν στοιχεία, αλλά όχι μέχρι μια πλήρως κενή κατάσταση). Ωστόσο, καθώς οι επανατοποθετήσεις κατά την αφαίρεση στοιχείων από το τέλος συμβαίνουν σπάνια και το κόστος τους διανέμεται σε πολλές λειτουργίες προσθήκης, η αθροιστική πολυπλοκότητα θεωρείται σταθερή.