Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Скорость перебор элементов vector'a и list'a - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Граф.Найти все мосты http://www.cyberforum.ru/cpp-beginners/thread284115.html
Помогите пожалуйста,нужно в графе найти мосты(мост-ребро,при удалении которого увеличивается количество компонент связности) ,у меня следующий вопрос: как задать входные данные?Ну нужно считывать...
C++ Не могу изпользовать свой стек в мейне(( ето просто ппц. сложность в том чтоя токо типа научилсо использовать неймспейсы! и тутси взял и написал стек при помощи класа. всё будто правильно ща токо перегруженую операцыю = дорисую и всё!!! но... http://www.cyberforum.ru/cpp-beginners/thread284107.html
Структура "Успеваемость студента": модифицировать, используя битовые поля C++
Доброго времени суток! Есть прога, которая, используя структуру, отображает успеваемость каждого студента. Хотелось бы ее модифицировать, т.е,используя побитовые операции, отбразить ту же...
C++ С++ set (Множества)
Дан текст из цифр и строчных латинских букв, за которыми следует точка. Определить каких букв - гласных или согласных - больше в этом тексте. напечатать в алфавитном порядке все согласные буквы,...
C++ Таблица умножения http://www.cyberforum.ru/cpp-beginners/thread284093.html
У меня такое дело...надо из корней составить таблицу умножения (Работа с матрицей) Например корни: 1 2 3 должна получиться матрица: 1 2 3 2 4 6 3 6...
C++ как переделать с cout на printf ? Вычислить суммы элементов каждой строки матрицы x. Определить наименьшее значение этих сумм и номер соответствующей строки. #include <iostream> #include <stdlib.h> #include <conio.h> #include... подробнее

Показать сообщение отдельно
Union
17 / 17 / 2
Регистрация: 16.08.2010
Сообщений: 252

Скорость перебор элементов vector'a и list'a - C++

27.04.2011, 00:00. Просмотров 3896. Ответов 7
Метки (Все метки)

Видел на форумах пишут что поиск по несортированному вектору быстрее, чем по листу. Логично предположить что все элементы вектора находятся в едином куске памяти и всегда известно где начинается каждый элемент. В листе же элементы разбросаны и каждый содержет указатель на предыдущий и следующий элемент. Т.е. в векторе всегда указатель перемещается на константную величину, а в листе нужно эту величину ещё прочитать.
Но мне так кажется что если реализовать поиск методом ручного перебора итераторами
C++
1
for (it=vect.begin();it!=vect.end();++it){}
То вектор и лист одинакового размера перебирутся за равное время???
Есть ещё спец. функции - binary_search - ищет по сортированному вектору половинчатым перебором и find - перебирает весь вектор.
Объясните пожалуйста, будет ли выигрыш в скорости при поиске по несортирпованному вектору, вместо листа, если они перебираются последовательно вручную итераторами?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru