Страницы

Поиск по вопросам

воскресенье, 8 декабря 2019 г.

Контейнер deque в STL c++

#cpp #шаблоны_с++ #stl #библиотеки #контейнеры


Я начал изучения библиотеки STL и нашел такой интересный контейнер, как deque, но
я не понял, в чем его преимущество, если можно заменить его другими контейнерами из
того же STL?
    


Ответы

Ответ 1



А чем вообще один контейнер отличается от другого? И вообще, все их можно заменить обычным массивом... В конце концов, какая разница, искать ли элемент в контейнере час или пару секунд, или - ну что тут такого страшного, если вставка в начало массива требует перемещения всех его элементов? Или это существенно? Тогда учтите, что дек обеспечивает быструю вставку-удаление с обоих концов контейнера - чего, например, не может обеспечить vector, но при этом быстрое (хотя чуть медленнее, чем у vector) обращение к любому элементу внутри, чего, например, не может обеспечить list. Но при этом он не может обеспечить быстрый поиск, как у set или unordered_set... Ну, а чтобы вам было легче выбирать, какой именно контейнер вам нужен - вот неплохая шпаргалка: Еще одна сводная шпаргалка по функциям контейнеров:

Комментариев нет:

Отправить комментарий