Определение трудоемкости алгоритмов
Сетевой метод. Позволяет определить минимальную, максимальную и среднюю трудоемкость. Перед расчётом производится нумерация вершин ГСА по номерам 0,1,2,...,К; где 0 и к соответственно номера начальной и конечной вершин. Затем выделяются циклы по рангам 1,2,.... Для цикла m с низшим рангом находится среднее число повторений '
где
где z - множество номеров вершин, предшествующих номеру i,
где R - множество номеров вершин цикла m;
И цикл заменяется эквивалентным оператором со средним временем выполнения Повторяя процедуру для всех циклов последовательно по рангам и заменяя их эквивалентными операторами, в последующем находится среднее время выполнения алгоритма. Аналогично определяется минимальное и максимальное время выполнения. Для этого находятся минимальное и максимальное время цикла с номером m последовательно по рангам с заменой их эквивалентными операторами с временами Времена
Здесь
Трудоемкость алгоритма – это объем работы, которое необходимо выполнить. Для его реализации она может быть измерена в числе тактов, количестве команд и т.д. Существует сетевой метод оценки трудоемкости, который основан на описании алгоритма в виде граф - схемы алгоритма (ГСА). ГСА состоит из операторных вершин, связанных между собой дугами переходов. Вершины делятся на 3 типа (начальная, конечная и функциональная). Начальная и конечная имеют нулевую трудоемкость. Функциональные содержат перечень операций соответствующие данному алгоритму. Делятся на 2 вида: 1) вершины реализации процессорных операций, 2) вершины реализации ввода-вывода или операции передачи информации. Для общей оценки должна быть известна трудоемкость каждого оператора. Введем обозначения:
V – множество операторных вершин, где V0 и Vn – начальная и конечные вершины. Каждая вершина характеризуется средним числом обращений – ni, где Пусть даны циклы разных рангов: С1 С2 С3 …. Сm Q1 Q2 Q3 … Qm=Q где Q - суммарная трудоемкость всего алгоритма. У каждого из этих циклов есть трудоемкость и среднее число повторений циклов i-го ранга.
где ni – среднее число повторений циклов i- го ранга, tI трудоемкость тела цикла Формулы:
Среднее число обращений
Вероятность обращения из j-й в i-ую. nj – число обращения к j-той вершине за одну реализацию алгоритма.
Осн.лит. 4[22-46], Доп. лит.5[6-21] Контрольные вопросы: 1. Что такое граф-схема алгоритма? 2. В чем определяется трудоемкость алгоритма? 3. В чем суть сетевого метода расчета трудоёмкости алгоритма? 4. Что такое ранг цикла? 5. Как формализовано, определяется число повторений цикла?
Воспользуйтесь поиском по сайту: ![]() ©2015 - 2025 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|