Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Содержание сайт... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Создание отчето... 65455
Модуль Forms 65215
Пример работы с... 64642
ТЕХНОЛОГИИ ДОСТ... 61898
Имитационное мо... 57778
Реклама
Сейчас на сайте
Гостей: 8
На сайте нет зарегистрированных пользователей

Пользователей: 13,085
новичок: nikita222dolban
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Моделирование автомойки на GPSS + Отчет + Блок схемы
Обучающая и тестирующая программа по здаче экзамена ПДД на Turbo Pascal ...
Программа тестирования и обучающая программа по математике на Turbo Pasc...

Реклама



Подписывайся на YouTube канал о программировании, что бы не пропустить новые видео!

ПОДПИСЫВАЙСЯ на канал о программировании
8.5. И что это значит?
Пока что мы действовали довольно безответственно, используя «О-большое». Пришло время поговорить о реальных вещах и измерить время выполнения программ. Я реализовал четыре приведенных выше алгоритма на языке С на компьютере Pentium II 400 МГц, измерил скорость их работы и экстраполировал данные, сведя их в табл. 8.1. Время выполнения алгоритма 26 обычно отличалось не более чем на 10% от алгоритма 2а, поэтому я не стал выделять его в отдельный столбец.
Таблица 8.1. Скорость работы алгоритмов
Алгоритм 1 2 3 4
Время выполнения 1,Зи3 10 п2 47н log2 п 48м
в наносекундах
Время 103 1,3 с 10 мс 0,4 мс 0,05 мс
решения Ю* 22 мин 1 с 6 мс 0,5 мс
задачи 105 15 дней 1,7 мин 78 мс 5 мс
размером ю6 41 год 2,8 ч 0,94 с 48 мс
ю7 41 тыс. лет 1,7 недели 11 с 0,48 с
Максималь 1 С 920 10 000 1,0х106 2,1х107
ный размер 1 мин 3600 77 000 4,9х107 1,3х109
задачи, 1 ч 14 000 6,0х105 2,4х109 7,6хЮ10
решаемой за 1 день 41 000 2,9x10б 5,ОхЮ10 1,8х1012
При увеличении п в 10 раз 1000 100 10+ 10
время возрастает в
При увеличении времени 2,15 3,16 10- 10
в 10 раз п увеличивается в
Эта таблица дает довольно много разнообразных сведений. Самый главный вывод; выбор правильного алгоритма может очень сильно влиять на время решения задачи. Это особенно подчеркивается в средней части таблицы. Последние две строки показывают, как связаны время решения задачи и ее размер.
Есть еще один важный момент. При сравнении кубического, квадратичного и линейного алгоритмов постоянные множители в выражениях для производительности значат не так уж много. Обсуждение алгоритма с временем выполнения 0(ц!) в разделе 2.4 (см. главу 2) показывает, что для быстрорастущих функций постоянные множители значат еще меньше. Чтобы подчеркнуть важность этого момента, я поставил эксперимент, в котором разница в постоянных множителях была максимально возможной. Алгоритм 4 был реализован на компьютере Radio Shack TRS-80 Model III (бытовой компьютер 1980 года выпуска с процессором Z80 на частоте 2.03 МГц). Чтобы еще больше замедлить его работу, я использовал интерпретатор Бейсика, что замедляет программу в 10-100 раз по сравнению с компилированным кодом. Алгоритм 1 был реализован на компьютере Alpha 21164 с частотой 533 МГц. Время выполнения кубического алгоритма росло по формуле 0,58л3 не,
а для линейного алгоритма — 19,5л мс (то есть 19500000л не или 50 элементов в секунду). В табл. 8.2 показаны результаты экспериментов для различных размеров задачи.
Опубликовал vovan666 April 17 2013 04:00:39 · 0 Комментариев · 2521 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Нет комментариев.
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
SysInfo [Исходник...
IconCut [Исходник...
Разработка распре...
Анекдоты с ostrie.ru
Редактор анимаций
PHP 5
Добавление басса ...
Программирование ...
Разработка Web-пр...
Язык программиров...
KOL & MCK v1.69
SUIPack
Клавиатурный трен...
Самоучитель C++
Crypt32
PDF
Простой пример ка...
ZipTV
Fig [Исходник на ...
Правила программи...

Топ загрузок
Приложение Клие... 100470
Delphi 7 Enterp... 87077
Converter AMR<-... 20078
GPSS World Stud... 12845
Borland C++Buil... 11846
Borland Delphi ... 8604
Turbo Pascal fo... 7039
Visual Studio 2... 4999
Калькулятор [Ис... 4802
FreeSMS v1.3.1 3542
Случайные статьи
Уничтожение бумаги
7.9. Поиск по гр...
4.2. Отсечение
Шаблоны и... шаблоны
Бесплатные игровые...
Глава 26. ХР в ...
Подсистема STREAMS
Старые открытки
Решение логических...
Добавление дополни...
Установка модулей ...
Установка DevOS на...
Блок настроек сайта
Чтение файлов MS W...
Зарегистрируйте из...
Методы выделения т...
Модуль CRT. Управл...
HTPC на базе Windows
Конструктор копии
Соединение по треб...
Размещение элемент...
Работа с директори...
Создание пользоват...
Квартир оценка
Этап 9: выполните ...
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?