КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Рекуррентные соотношения как средство анализа сложности алгоритмов
П Задачи 98. Исследовать битовую сложность вычисления величины 1 + + 2 +... +n последовательными сложениями. Размером входа считать битовую длину m целого числа n. 99. Для временной битовой сложности «сверхнаивного» умножения (пример 19.1) при использовании параметров mъ m2 верна оценка сверху O (2тах{ m 1' m 2}тах{ m 1, m 2}), а оценка Q(.2max{m^m } max{m1,m2}) неверна. Указание. Неверна оценка П(2тах{ m ь m 2}тах{ m 1, m 2}): она противоречила бы оценке O(2m2m{), так как для любого N > 0 существуют m1,m2>N такие, что m1 = 2m2. 100. Определение чисел Фибоначчи, данное в § 10, позволяет вычислить Fn, выполнив n — 1 сложение. Битовая сложность этого алгоритма допускает оценку O{n2) при рассмотрении n в качестве размера входа. 101. Обосновать использованный в доказательстве предложения 21.1 переход от оценки T*^(.mъm2) = O{{mг - m2 + 1)(m 2 + 1)) к T ^* (m ъ m 2) = O{{mг -m2 + 1) m 2). 102. Можно ли усилить предложение 21.2, заменив приведенные там оценки O (log a log b), O (log2 a) на e(log a log b), 6(log2 a)? 103. Рассмотрим m = А(n) в качестве размера входа алгоритма вычисления факториала (пример 20.1). Верна ли для соответствующей временной битовой сложности оценка O (2 mm)? 104. К числу, первоначально равному нулю, прибавляется шаг за шагом по единице до получения значения 2 n - 1, n ^ 0. При этих сложениях потребуется 2 n - n - 1 переносов единицы в старший разряд. 105. Пусть p — простое, a и b — произвольные целые, k — натуральное. Тогда (a + b)pk=apk +bpk (mod p). Задачи 106. а) Аддитивная группа кольца Zk является циклической, в ка б) Пусть р—простое, тогда мультипликативная группа поля Zp, т. е. группа всех ненулевых элементов по умножению, является циклической. 107. Если число р—простое, а к —неотрицательное целое, мень Указание. Предварительно показать, что р не делит /с!. 108. Индукцией по а доказать малую теорему Ферма. Указание. Использовать равенство ар = (1 + (а - 1))р и предыдущую задачу. 109. Имеет место следующая китайская теорема об остатках: Указание. Пусть k = k1k2...kn и g; = fc / fc;, i = l,2,...,n. При всех i = l,2,......, п числа fc; и g ; взаимно просты, поэтому расширенным алгоритмом Евкли- да можно определить h{ так, что h ; g ; = 1 (mod fc;) и положить /= Xi ^j^jSj. 110. Исходя из того, что значение полинома /(х) в точке х = а 111. Битовая сложность китайского алгоритма, эскизно обрисован Указание. По поводу сложности вычисления g см. пример 20.2; сложность этапа вычисления всех g ; допускает оценку ОI J] log g log кЛ и т. д. Глава 5. Битовая сложность 112. Верно ли, что для битовой сложности в среднем алгоритма пробных делений справедлива оценка п((|)Ш)? 113. Битовая сложность в среднем алгоритма наивного умножения двух неотрицательных целых чисел а и Ъ допускает оценку Г2(т2), а тем самым —и 6(т2), где т = тах{А(а), А(Ь)}. Указание. Битовые затраты при наивном умножении а на Ъ не могут быть меньше, чем сА(а)А*(Ь). Два случая A(a) = m, A(b)sS m и А(а)г£т, А(Ь) = т приводят к двум вероятностным пространствам УЪУ2, состоящим из соответствующих пар (а, Ь) с равномерными распределениями вероятностей. Определить значения вероятностей событий А (а) = к и А(Ь) = к для произвольного О^к^т для каждого из пространств V l5 V 2 и найти математические ожидания случайных величин £(a, b) = A(a), rj(a, b) = А*(Ь). В силу независимости £ и rj можно воспользоваться равенством E(£(a, b)rj(a, Ь)) = = (E(C(a, b))(Erj(a, b)). 114. Привести полное доказательство равенства (23.1). 115. Основываясь на (23.2) и бинарном алгоритме возведения в степень, построение С* можно выполнить с пространственной сложностью Зп2 + 0(1). 116. Искомая матрица С* будет вычисляться правильно и после увеличения показателя степени в правой части (23.2).
117. Воспользовавшись утверждением, содержащимся в задаче 116, заменим показатель степени в правой части (23.2) на 2т, где т — наименьшее целое, такое что 2т ^ п - 1. Как изменится верхняя оценка (23.4) при переходе к этой новой версии алгоритма? 118. Исследовать пространственную сложность описанного в задаче 117 алгоритма.
119. Какой наибольшей временной сложностью может обладать алгоритм умножения булевых матриц, или, другими словами, какую верхнюю границу должна допускать функция В{п), чтобы временные затраты описанного в задаче 117 алгоритма допускали бы оценку 0{пъ)? 120. Можно ли первую строку приведенного в § 23 псевдокода алгоритма Уоршелла переместить в конец этого псевдокода? Указание. Рассмотрим алгоритм в сокращенном виде, удалив эту строку из псевдокода. Влияют ли значения диагональных элементов исходной матрицы на значения внедиагональных элементов матрицы-результата? 12 1. Описать версию алгоритма Уоршелла для вычисления крат Задачи цы смежности дана матрица, содержащая длины соответствующих ребер. Если какие-то вершины не соединены, то длина ребра равна ∞. Провести анализ сложности по числу операций сложения и операций нахождения минимума (раздельно) и анализ пространственной сложности. (В этой задаче мы не рассматриваем битовую сложность.) Глава 6
Дата добавления: 2014-01-11; Просмотров: 512; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |