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

не очень понял про динамическое выделение памяти. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Дана матрица вещественных чисел. Найти максимальный элемент и наиболее удалённый от него (по значению) элемент матрицы. http://www.cyberforum.ru/cpp-beginners/thread172310.html
Дана матрица вещественных чисел. Найти максимальный элемент и наиболее удалённый от него (по значению) элемент матрицы. Поиск осуществлять в квадратном контуре, центром которого является максимум, а...
C++ Заменить 0 на 1 или 1 на 0 Битовая инверсия через If на с++ bool a; int main(int argc, char* argv) { cout<<rus("Введите а")<<endl; cout<<"a="; cin>>a; http://www.cyberforum.ru/cpp-beginners/thread172287.html
ввод структурированных данных в файл и вывод данных из этого файла на экран (сделать хра-нилище данных в файле). C++
Здравствуйте) помогите написать программу, осуществляющую ввод структурированных данных в файл и вывод данных из этого файла на экран (сделать хра-нилище данных в файле). Вариант: абитуриенты....
C++ Размер DOS-окна
Всем привет. Можно ли как-то изменить размер DOS-окна? Программы, создаваемые в таких компиляторах как Borland C++, при запуске выводят DOS-окно (может я не правильно назвал), размер которого...
C++ Информация о карманной сортировке http://www.cyberforum.ru/cpp-beginners/thread172279.html
вот никак не могу найти о "карманной сортировке с неповторяющимися ключами с использованием допол.масивов и без них" немогли бы вы найти что нить по этой теме)))
C++ Очень трудно. Написать таблицу 3х6 (столбцы и строки соответственно). Что бы при запуске программы в ячейках таблицы появлялись 5 слов(одновременно в разных ячейках): Process 1, Process 2, Process 3, Process 4,... подробнее

Показать сообщение отдельно
ForEveR
В астрале
Эксперт С++
7983 / 4742 / 321
Регистрация: 24.06.2010
Сообщений: 10,543
Завершенные тесты: 3
04.10.2010, 20:35
silent_1991, Ну если массив из 1000 элементов и вектор из 1000 элементов... Наверное будет заметна разница.

Добавлено через 6 минут
Вектор заполняется от одинакового времени до 0.002 в сравнении с массивом

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <ctime>
#include <vector>
 
int main()
{
    int size=1000;
    clock_t start=clock();
    int*Arr;
    Arr=new int[size];
    for(int i=0; i<size; ++i)
        Arr[i]=i+1;
    std::cout<<static_cast<double>(clock()-start)/CLOCKS_PER_SEC<<'\n';
    start=clock();
    std::vector<int> Vec;
    for(int i=0; i<size; ++i)
        Vec.push_back(i+1);
    std::cout<<static_cast<double>(clock()-start)/CLOCKS_PER_SEC<<'\n';
        delete[] Arr;
    return 0;
}
В этом случае разница заметна. Массив - 0.012, вектор - 0.694
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <ctime>
#include <vector>
 
int main()
{
    int size=1000000;
    clock_t start=clock();
    int*Arr;
    Arr=new int[size];
    for(int i=0; i<size; ++i)
        Arr[i]=i+1;
    std::cout<<static_cast<double>(clock()-start)/CLOCKS_PER_SEC<<'\n';
    start=clock();
    std::vector<int> Vec;
    for(int i=0; i<size; ++i)
        Vec.push_back(i+1);
    std::cout<<static_cast<double>(clock()-start)/CLOCKS_PER_SEC<<'\n';
        delete[] Arr;
    return 0;
}
В этом случае - все еще жестче. 0.146 у массива и 6 с лихом секунд у вектора

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <ctime>
#include <vector>
 
int main()
{
    int size=10000000;
    clock_t start=clock();
    int*Arr;
    Arr=new int[size];
    for(int i=0; i<size; ++i)
        Arr[i]=i+1;
    std::cout<<static_cast<double>(clock()-start)/CLOCKS_PER_SEC<<'\n';
    start=clock();
    std::vector<int> Vec;
    for(int i=0; i<size; ++i)
        Vec.push_back(i+1);
    std::cout<<static_cast<double>(clock()-start)/CLOCKS_PER_SEC<<'\n';
    delete[] Arr;
    return 0;
}
Добавлено через 11 минут
Секунда с чем-то у массива. И около 80 у вектора.
Вообщем заметно даже очень.

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <iostream>
#include <ctime>
#include <vector>
 
int main()
{
    int size=100000000;
    clock_t start=clock();
    int*Arr;
    Arr=new int[size];
    for(int i=0; i<size; ++i)
        Arr[i]=i+1;
    std::cout<<static_cast<double>(clock()-start)/CLOCKS_PER_SEC<<'\n';
    start=clock();
    std::vector<int> Vec;
    for(int i=0; i<size; ++i)
        Vec.push_back(i+1);
    std::cout<<static_cast<double>(clock()-start)/CLOCKS_PER_SEC<<'\n';
    delete[] Arr;
    return 0;
}
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru