Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.58/207: Рейтинг темы: голосов - 207, средняя оценка - 4.58
6 / 6 / 3
Регистрация: 31.03.2011
Сообщений: 69
1

Разница между list и vector

19.12.2011, 16:09. Показов 38866. Ответов 5
Метки нет (Все метки)

Подскажите пожалуйста в чем различие между листами и векторами? Сколько не пытался не смог найти реальной разницы между ними. В чем разница и что нужно когда использовать

Заранее спасибо
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.12.2011, 16:09
Ответы с готовыми решениями:

Разница между list и vector?
Разница между list и vector?

Разница между Vector и ArrayList
Какая разница между Vector и ArrayList? Как правелнее объявлять переменую типа ArrayList? 1)...

Разница между list и dic
Начал изучать Python, и возник такой вопрос: а какая разница между списками и словарями?

Получение данных из БД: в чем разница между Iqueryable и List
получение записей из бд можно с помощью IQueryable и List. А в чем разница? Что лучше использовать?

5
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
11032 / 6984 / 1651
Регистрация: 25.07.2009
Сообщений: 12,734
19.12.2011, 16:12 2
Цитата Сообщение от rus_phantom Посмотреть сообщение
В чем разница и что нужно когда использовать
Вектор - контейнер с произвольным доступом, лист - с последовательным. Если нужно хаотично выбирать элементы из контейнера, или как-то хитро его сортировать, нужен вектор. Если устраивает последовательный доступ к элементам, подойдёт лист. По сути разница между массивом и связанным списком.
1
572 / 555 / 47
Регистрация: 16.12.2011
Сообщений: 1,389
19.12.2011, 16:13 3
list - это список. Имеет все преимущества и недостатки списков
vector - динамический массив. Имеет все преимущества и недостатки массивов

И списки, и массивы - достаточно простые понятия. Думаю, нет смысла копировать вам на форум выдержки из книг. Вы и сами в состоянии их найти. Как только прочитаете про списки и массивы, ответ на вопрос "что нужно когда использовать" найдется сам собой.
2
6 / 6 / 3
Регистрация: 31.03.2011
Сообщений: 69
19.12.2011, 16:15  [ТС] 4
То есть данные в векторе находятся хаотично и операция добавления элемента гораздо менее затратна, чем для листов, в котором элементы находятся последовательно в памяти?
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
11032 / 6984 / 1651
Регистрация: 25.07.2009
Сообщений: 12,734
19.12.2011, 16:16 5
Цитата Сообщение от rus_phantom Посмотреть сообщение
То есть данные в векторе находятся хаотично и операция добавления элемента гораздо менее затратна, чем для листов, в котором элементы находятся последовательно в памяти?
Нет, не правильно. В массиве данные хранятся последовательно. Доступ к произвольному элементу массива происходит быстрее, чем доступ к произвольному элементу списка.
0
572 / 555 / 47
Регистрация: 16.12.2011
Сообщений: 1,389
19.12.2011, 16:17 6
Цитата Сообщение от rus_phantom Посмотреть сообщение
То есть данные в векторе находятся хаотично и операция добавления элемента гораздо менее затратна, чем для листов, в котором элементы находятся последовательно в памяти?
Эм, наоборот. Расположение данных в памяти у вектора последовательное, а значит вы сможете получить доступ к любому элементу вектора очень быстро (с помощью []). Зато добавление элемента, например, в середину вектора - очень затратно. Ведь нужно сдвинуть остальные данные.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
19.12.2011, 16:17

В чем разница между массивом строк и List<string>?
А есть ли принципиальная разница между string array1 и List&lt;string&gt; array2 ? И если есть, то в...

vector и list
1) Правильно ли я понимаю, что при расширении вектора все предыдущие указатели портятся? ...

Vector, list for beginners
Доброго времени суток. Поскольку самоучитель Лафоре не подходит для начинающих (...

Контейнеры Vector и List (C++)
Уважаемые форумчане! Помогите, пожалуйста, реализовать вручную классы Vector и List с основными их...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.