7. Программа проверки времени работы в разделе 5.5 содержит возможную ошибку. Если мы осуществляем поиск каждого следующего элемента, мы создаем очень удобную ситуацию для использования кэша. Если мы знаем, что в некотором приложении последовательные операции поиска будут выполняться для соседних элементов массива, эта проверка отражает действительную ситуацию. Однако в этом случае двоичный поиск уже не будет самым оптимальным вариантом. Если мы ожидаем, что нужно будет искать случайные элементы массива, нам придется инициализировать и перетасовать вектор перестановок:
for 1 = [0. п) p[i] = i scramble(p. п)
а затем производить поиск в случайном порядке:
assert(binarysearch1(р[п ])) -- p[i])
Измерьте и сравните скорости выполнения этих двух программ.
8. Тестовые программы используются в программистской практике, честно говоря, недостаточно и редко обсуждаются в книгах. Изучите вес примеры тестовых программ, которые сможете найти; в крайнем случае загрузите их с сайта этой книги (http://netlib.bell-labs.com/cm/cs/pearls/). Напишите тестовую программу для проверки какой-нибудь сложной функции, которую вы написали.
9. Скачайте тестовую программу search.с с сайта этой книги и поэкспериментируйте с ней с целью определения времени выполнения функции двоичного поиска на своем компьютере. Какими средствами вы воспользуетесь для формирования исходных данных для поиска и для сохранения и анализа результатов?
Опубликовал vovan666
April 16 2013 23:58:54 ·
1 Комментариев ·
3726 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Oleg27 October 25 2023 18:29:56
Иногда для того чтобы не много отдохнуть после работы, я играю в вот это онлайн казино зеркало 1ХБет у них высокие бонусы и классные игровые залы. С выводом никогда проблем не было. Dc. Всю необходимую информацию узнаете из обзора.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.