КАТЕГОРИИ: Архитектура-(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) |
Нижняя граница сложности в среднем
При рассмотрении сложности в среднем мы основываемся на тех же понятиях нижней границы, оптимального и оптимального по порядку сложности алгоритма, которые были введены для сложности в худшем случае. Пример 17.1. Вновь обратимся к классу алгоритмов сортировки. Будем, как и в § 6, рассматривать вероятностное пространство П n. Предложение 17.1. Функция log2 n! является нижней границей сложности в среднем для класса алгоритмов сортировки массивов длины n с помощью сравнений. § 17. Нижняя граница сложности в среднем Прежде всего докажем вспомогательное утверждение. Лемма 17.1. В любом двоичном дереве с т листьями сумма высот всех листьев не меньше т log2 т. Доказательство. Пусть непусто множество М всех двоичных деревьев, для которых сумма высот всех листьев меньше т log2 т. Выберем в М какое-нибудь из деревьев, имеющих наименьшую сумму высот, и обозначим его U (сумму высот всех листьев будем обозначать через Я(J7)). Это дерево не может состоять из одного лишь корня, потому что для такого дерева обсуждаемое неравенство выполнено. Далее, из корня этого дерева не может выходить только одно ребро, потому что для дерева, получающегося из исходного удалением корня и этого ребра, обсуждаемое неравенство не выполняется, и такое новое дерево имеет сумму высот меньшую, чем дерево U (противоречие со способом выбора дерева U). Поэтому из корня дерева U выходит два ребра, концы которых являются корнями двух деревьев иг и U2, для которых выполнено обсуждаемое неравенство. Пусть эти деревья имеют, соответственно, тг и т2 листьев, тъ т2 > 0. Имеем соотношение для сумм высот всех листьев H{U) =H(U1) + Я(!У2) + т^тг log2 тг + т2 log2 m 2 + т. Отсюда получаем Я([7) =г тг log2 тг + {т- тг) log2(m-тг)+т при некотором тг таком, что 1 ^ тг ^ т - 1. Легко показать, что при фиксированном т функция /(х) =х log2 х+ + (т-х) log2(m - x) достигает минимума на отрезке [1, т - 1] в точке (не обязательно целой) т/2. Поэтому Я([7) ^ j log2 j + j log2 Щ-+т = т log2 т. Доказательство предложения 17.1. Рассмотрим какое-либо дерево сортировки массива длины п. Это дерево имеет ровно п! листьев, каждый лист соответствует перестановке элементов исходного массива. Появление на выходе рассматриваемой сортировки любой из этих 1 перестановок имеет одну и ту же вероятность —, количество сравнений, приводящее к этой перестановке—это высота соответствующего этой перестановке листа. Поэтому математическое ожидание числа сравнений равно произведению суммы высот всех листьев на —. 120 Глава 4. Нижняя граница сложности. Оптимальные алгоритмы Согласно лемме 17.1 сумма высот всех листьев должна быть не Доказанные ранее теорема 16.2 и предложение 16.1 справедливы в равной мере и для сложности в худшем случае, и для сложности в среднем. Принимая это во внимание, мы получаем следствие предложения 17.1: Сортировка бинарными вставками и сортировка фон Неймана, а также быстрая сортировка являются оптимальными по порядку сложности в среднем по числу сравнений. К этому списку позднее мы добавим и рекурсивную сортировку слияниями. Наиболее же существенно упоминание в этом списке быстрой сортировки. С одной стороны, как мы знали и раньше, эта сортировка очень удобна и имеет низкую пространственную сложность, с другой—мы видим теперь, что и в смысле временной сложности в среднем эта сортировка в определенном смысле может быть отнесена к наилучшим. Можно показать существование оптимальной в среднем сортировки: для каждого фиксированного n в множестве всех деревьев сортировки массивов длины n можно рассмотреть подмножество деревьев, имеющих наименьшую сумму H высот всех листьев (тогда и H/n\ будет иметь наименьшее значение), и взять какое-нибудь из деревьев этого подмножества. Определяя сортировку этим способом для всех n мы получаем оптимальную сортировку. Для любой оптимальной в среднем сортировки выполнено T opt(n)~log2 n!~ n log2 n, так как, например, мы имеем T vN(n)~log2 n! и T vN(n) ^ T vN(n) ^ T (n) ^ log2 n\. В этом примере, как и во всем этом параграфе, мы не касаемся рандомизированных алгоритмов, о которых будет говориться в § 18. Как мы ранее наблюдали в некоторых примерах, рассмотрение функции L, подобранной надлежащим образом, и изучение изменения ее значений в ходе выполнения алгоритма нередко позволяет получать хорошие оценки (в частности, нижние границы) сложности в худшем случае. Рассмотрение такого рода функций может приводить к цели и при исследовании сложности в среднем. В задаче 37 функцию L можно определить как максимум значений компонент § 17. Нижняя граница сложности в среднем инверсионного вектора перестановки. Эта функция является случайной величиной на П n, при этом Д L = -1 на каждом шаге алгоритма. В других ситуациях начальное значение L может определяться однозначно, тогда как Д L является случайной величиной. Сформулируем теорему, полезную в этих ситуациях. Теорема 17.1. Пусть £ 1, £2,... —последовательность неотрицательных случайных величин на некотором вероятностном пространстве. Пусть числовая последовательность h 1, h2,... такова, что для каждого k ^1 выполнено E (C k l^ 1,?2,...,? k -1) ** h при всех значениях?1,?2,..., S k -1. Зафиксируем неотрицательное число q и введем целочисленную случайную величину т = min n:
k =1 Пусть т < оо всюду на рассматриваемом вероятностном пространстве. Тогда е(£ hk ^ q. k =1 Доказательство приведено в приложении E. Для того чтобы воспользоваться этой теоремой, можно опять попытаться определить некоторую неотрицательную функцию L, отражающую степень «недорешенности» рассматриваемой задачи: значение L равно нулю, если алгоритм доработал до конца и задача решена. Считаем, что всем входам фиксированного размера сопоставляется одно и то же значение функции L. После выбора такой функции L мы должны показать, что последовательность величин Е(-Д L), соответствующих идущим друг за другом этапам алгоритма, ограничена сверху некоторой известной числовой последовательностью h1,h2,...; тогда случайная величина т, равная для данного входа общему количеству этапов, приводящих к завершению алгоритма, такова, что Е(2 hk ) ^ q, где q — значение функции L, сопоставляе- мое входам алгоритма рассматриваемого фиксированного размера. Это неравенство можно использовать, чтобы оценить снизу значение Ет. Конечность величины т следует из завершимости алгоритма для любого входа. Пример 17.2. Вернемся к задаче одновременного выбора наибольшего и наименьшего элементов массива длины n, n ^ 2, с помощью сравнений (пример 15.1). Вероятностным пространством здесь вновь будем считать П n. Каждая перестановка из П n отражает, как обычно, 122 Глава 4. Нижняя граница сложности. Оптимальные алгоритмы взаимный порядок элементов исходного массива. Все перестановки считаются равновероятными. Чтобы воспользоваться теоремой 17.1, мы полагаем, что случайные величины Е,1, Е,2,... для произвольного алгоритма одновременного выбора наибольшего и наименьшего элементов равны значениям -AL на последовательных шагах этого алгоритма, об определении функции L будет сказано ниже. Значения £ 1, £2,... зависят от конкретной перестановки из П n, отражающей взаимный порядок элементов в исходном массиве. После того, как алгоритм закончил работу, значения Е,k при последующих значениях k равны нулю. Предложение 17.2. Функция
-n - 2, если n четно, 3 1 (17.1) I 2n - 2 + 2 n-, если n нечетно, является нижней границей сложности в среднем алгоритмов одновременного выбора наибольшего и наименьшего элементов массива длины n, n ^ 2, c помощью сравнений. Доказательство. Вновь обратимся к множествам A, B, C, D, к рассмотренным в доказательстве предложения 15.1 типам AA,AB,...,DD сравнений, количествам a, b, c, d элементов множеств A, B,C,Dи функции L(a, b, c, d) = 32 a + b + c - 2 (равенство L = 0 является необходимым и достаточным условием того, что искомые элементы найдены). Пусть в процессе выбора наибольшего и наименьшего элементов массива уже произведены некоторые сравнения элементов этого массива. При каждом из этих сравнений получался некоторый результат «истина» или «ложь», и эти результаты нам известны. Если процесс выбора наибольшего и наименьшего элементов еще не завершен, то следующим шагом вновь будет некоторое сравнение одного из типов AA, AB,..., DD. Сравнения AB, AC и BC представляют особый интерес, так как можно бы предположить, что здесь получится ЕД L< -1. Но на самом деле это неравенство не имеет места ни при одном из этих трех типов сравнений. Тип BC. Покажем невозможность такого выбора индексов i и j, основанного только на результатах уже произведенных сравнений, что xi g B, xj g C и при этом с вероятностью, не меньшей половины, выполняется xi < xj. Пусть сделан некий выбор индексов i и j, при котором xi е B, xj g C. Рассмотрим множество M всех массивов y 1 ,y2,...,yn, которые § 17. Нижняя граница сложности в среднем получаются перестановками элементов массива х 1, х2,...,хп и при этом сравнения элементов с теми же самыми индексами, которые использовались в уже произведенных сравнениях элементов массива х 1, х2,...,хп, дают для массивов из М результаты, совпадающие с полученными для х 1, х2,...,хп. Представим множество М в виде объединения двух непересекающихся подмножеств М 1 и М2, где в М 1 входят те массивы, для которых у < у;-, а в М2—те, для которых у,- < у. Покажем, что в М 1 больше элементов, чем в М2. Операция обмена у <—>у;- определяет взаимно однозначное отображение на себя множества всех массивов, которые получаются перестановками элементов массива х 1 ,х2,...,хп. Обратным к этому отображению является оно само. В силу определения множеств В и С это отображение переводит элементы множества М1 в элементы множества М2. Следовательно, в М 1 элементов не больше, чем в М2. Но в М2 найдется массив, который при этом отображении не переходит в массив из М1 и, более того, вообще покидает множество М (чтобы убедиться в этом, достаточно заметить, что в М2 имеется такой массив У 1 ,у2,...,уп, для которого yj = тт{у 1 ,у2,...,у„}). Поэтому в М 1 элементов меньше, чем в М2. Если т1, т2 обозначают количества элементов множеств М 1 и М2, то имеем — < — т1+т2 т1 + т2 и, следовательно, m 1 1 — <. т1+т2 2 Таким образом, вероятность того, что i -й элемент меньше j -го, есть 12 - е, е > 0. Получаем ЕД1 = -212 - е) = -1 + 2е > -1. Тип АВ. Аналогично предыдущему можно показать, что при любом способе выбора индексов таких, что х{ е А, х;- е В, вероятность выполнения неравенства xt > х;- есть - - е, е > 0. Получаем ЕД1 = -!(12-е) -1(1+е)=-1 + е > -1. Тип АС. Рассматривается аналогично типу АВ. В дальнейшем будет полезна оценка е для сравнений типов АВ и АС. Рассмотрим для определенности АВ. Очевидно, что чем больше сравнений к рассматриваемому моменту прошел элемент х;- е В, тем меньше вероятность того, что элемент xteA окажется больше него. 124 Глава 4. Нижняя граница сложности. Оптимальные алгоритмы Наибольшая же вероятность получится в случае, когда х;- сравнивался только с одним элементом, например с xs, и xs —это наименьший элемент исходного массива. Вычислим вероятность, с которой в этом случае xt>Xj. Итак, если упорядочить все элементы, кроме x, Xj, то xs окажется наименьшим (первым). Общее число способов, которыми к этой упорядоченной совокупности можно добавить x, Xj, с учетом xs < xj равно n (n - 2) (для добавления Xj существует п - 2 способа, затем добавляем x, и для этого существует п способов). Из них 2) - 1 соответствуют неравенству xt < xi (возможен любой выбор двух среди п мест, кроме двух первых). Интересующая нас вероятность равна п(п-2)-(п) + 1 1 1 ■ ■ п(п-2) 2 2п Это дает нам е ^ 1-, и, таким образом, для АВ и АС. Если при четном п удастся обойтись сравнениями типов АА,ВВ,СС, то сравнений потребуется в точности 32п-2. Если п нечетно, то для решения задачи обязательно потребуется произвести хотя бы одно сравнение типа АВ, АС или AD. Сравнение типа AD дает Д1 = -12 > -1 + 21. Можно убедиться и в том, что для сравнений типов АВ и АС выполняется ЕД1^-1 + —, если ЕД1 рассматривается как математическое ожидание при условии, что значения Д1 для всех предыдущих сравнений, предписываемых алгоритмом, известны. Эти известные значения определяют некоторое событие V в вероятностном пространстве П„. Событие V может быть представлено как сумма V1 + V2 +... + Vl попарно несовместных событий, где каждое Vk состоит из тех элементов П„, для которых все предыдущие сравнения образуют некоторую фиксированную последовательность сравнений элементов с вполне определенными для данного к индексами, и при этом возникающие значения Д1 совпадают с известными из условия. В силу доказанного выше E(A L | V fc) ^ -1 + 2- для каж
-1 + В сумме 2 пк, о которой идет речь в теореме 17.1, мы можем поло-fc=1 жить hk = 1 для всех значений к, кроме какого-то одного значения к0, § 17. Нижняя граница сложности в среднем 125 для которого hko = 1 - Т7-. Это дает нам Е^ТгЛ =Е(т-1) + 1--^,
Дата добавления: 2014-01-11; Просмотров: 912; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |