Я изучаю язык C++, и я пытаюсь выяснить, в чем разница между вектором и списком. Я использую инструмент визуальной студии для кодирования. Может кто-нибудь объяснить, в чем разница?Разница между вектором и списком
ответ
A vector
- это изменяемый размер массива. Элементы хранятся рядом друг с другом в непрерывном блоке памяти, так что положение каждого из них можно быстро вычислить; это известно как случайный доступ. Вставка и удаление элементов из середины требует перемещения всех последующих элементов, поэтому может быть довольно медленным.
A list
- связанный список. Элементы разбросаны по памяти, и каждый имеет указатели на следующий и предыдущий элементы. Вы можете найти только элемент, следуя цепочке указателей, которая может быть довольно медленной; это известно как последовательный доступ. Но элементы можно вставлять и удалять, просто изменяя несколько указателей, так что это может быть довольно быстро.
Вот некоторые STL контейнеры и то, что они эффективны при:
vector
: динамический массив - эффективен при случайном доступе, а также добавлять/удалять в конце.list
: двухсвязный список - эффективный при переходе вперед/назад и вставка в любом месте.forward_list
: индивидуально связанный список - эффективный при прямом обходе и вставке в любом месте.deque
: удвоилась закончилась очередь - динамический массив, который также позволяет эффективно добавлять/удалять в началеarray
: статический массив - фиксированный размер во время компиляции.
- 1. разница между вектором и вектором производный класс
- 2. разница между списком, вектором и массивом в сценарии действия 3
- 3. Разница между списком() и [:]
- 4. Разница между параллельным вектором TBB и вектором STL?
- 5. разница между списком и списком <?>
- 6. Разница между вектором :: begin() и std :: begin()
- 7. Разница между вектором вставкой и назначить
- 8. Разница между вектором :: push_back и string :: push_back?
- 9. В чем разница между вектором и вершиной?
- 10. разница между списком и массивом
- 11. Разница между списком и перечислением
- 12. Разница между bytearray и списком
- 13. Какая разница между списком() и []
- 14. Разница между массивом и списком
- 15. mapply со списком и вектором
- 16. разница между списком дат
- 17. разница между списком списков
- 18. Разницы между стандом :: вектором и стандом :: массивом инициализатором списком
- 19. R: Как выполнить «внешний продукт» между вектором и списком
- 20. Контейнеры STL - различение между вектором, списком и deque
- 21. LibC++ разница между вектором :: вкладышем перегружает
- 22. Разница между списком и матрицей-курсором (Android)
- 23. разница между [] и списком() в python3
- 24. Разница между списком и [] в F #
- 25. В чем разница между списком и мультимножеством?
- 26. В чем разница между массивом и списком
- 27. lapply, разница между c() и списком()
- 28. Разница между sexp и списком в Emacs?
- 29. разница между двоичной строкой и обычным списком
- 30. Разница между пользователями openfire и списком Пользователи
я думаю, что вы можете найти множество подробных объяснений в гугле –
http://en.cppreference.com/w/cpp/container/vector http://en.cppreference.com/w/cpp/container/ список – shuttle87