Разработка алгоритмов и программ выполнения операций над последовательными и связанными представлениями структур данных
| Категория реферата: Рефераты по информатике, программированию
| Теги реферата: акт, решебники за 8 класс
| Добавил(а) на сайт: Bezrukov.
Предыдущая страница реферата | 1 2 3 4 5 | Следующая страница реферата
Yij - номер очередной вершины смежной i в графе Y(i = 1..N, j=1..ki)
Если из какой-то вершины не выходит ни одного ребра, то для нее в исходных
данных задаем только ноль (например ‘0’ - вершина 2 изолирована). Таким
образом, для каждого графа должно вводится в общей сложности N нолей.
Формат печати результатов работы программы представлен в следующем формате:
Даны неориентированные графы X и Y без кратностей.
Для каждого графа задаем номера вершины смежности с данной.
Граф X (в ЭВМ в последовательном представлении):
1 : X11 X12 ... X1k1
2 : X21 X22 ... X2k2
...
N : XN1 XN2 ... XNkN
Граф Y (в ЭВМ в связанном представлении):
1 : Y11 Y12 ... Y1k1
2 : Y21 Y22 ... Y2k2
...
N : YN1 YN2 ... YNkN
Над графами выполняется операция разности двумя способами
с получением нового графа Z (в связанном представлении):
1 : Z11 1,Z12 ... Z1k1
2 : Z21 Z22 ... Z2k2
...
N : ZN1 ZN2 ... ZNkN
И исправлением старого графа X (в последовательном представлении):
1 : X11 X12 ... X1k1
2 : X21 X22 ... X2k2
...
N : XN1 XN2 ... XNkN
Кол-во вершин, кол-во дуг графа X, кол-во дуг графа Y и кол-во времени, затраченного на вычисление разности X и Y:
N MX MY T
где T - кол-во времени, затраченного на вычисление разности X и Y
Zij - номер очередной вершины смежной i в графе Z(i = 1..N, j=1..ki)
MX - кол-во дуг в графе X
MY - кол-во дуг в графе Y
Метод решения:
Принцип решения основан на методе полного перебора, что конечно не лучший
вариант, но все-таки лучше, чем ничего.
Аномалии исходных данных и реакция программы на них:
1. нехватка памяти при распределение: вывод сообщения на экран и завершение работы программы;
2. неверный формат файла: вывод сообщения на экран и завершение работы программы;
Входные данные
Входными данными для моей работы является начальное число вершин графа, которое по мере работы программы увеличиться на 30 верши. Это число не может превосходить значения 80 вершин, так как в процессе работы программы число увеличивается на 30 и становиться 110 – это «критическое» число получается из расчета 110(216/3. Это происходит потому, что стандартный тип int не может вместить в себя более чем 216. Мне же требуется для нормально работы программы, чтобы тип вмещал в себя утроенное количество вершин неориентированного графа. Конечно, это всего лишь приближение, но с учётом того, что графы генерируются случайно возможность набора 33000 невелико и, следовательно, допустимо.
Входной файл генерируется каждый раз новый.
Графы для расчета мультипликативных констант генерируются случайным
образом, используя датчик случайных чисел, это-то и накладывает ограничения
на количество вершин. Дело в том, что при работе с генератором случайных
чисел предпостительно иоспользовать целый тип данных – так говорил товарищ
Подбельский В.В.
Оценка временной сложности.
Каткие сведения о временной сложности.
Качество алгоритма оценивается как точность решения и эффективность алгоритма, которая определяется тем временем, которое затрачивается для решения задачи и необходимым объёмом памяти машины.
Временная сложность алгоритма есть зависимость от количества выполняемых элементарных операций как функция размерности задачи. Временная сложность алгоритма А обозначается [pic].
Размерность задачи – это совокупность параметров, определяющих меру исходных данных. Временная оценка алгоритма бывает двух типов:
1. априорная – асимптотическая оценка сложности [pic]
2. апосториорная – оценка сложности алгоритма с точностью до мультипликативных констант, сделанных для конкретной машины.
Именно асимптотическая оценка алгоритма определяет в итоге размерность
задачи, которую можно решить с помощью ЭВМ. Если алгоритм обрабатывает
входные данные размера N за время CN2, где С – некая постоянная, то
говорят, что временная сложность этого алгоритма есть [pic]. Вернее
говорить, что положительная и нулевая функция [pic] есть [pic], если
существует такая постоянная С, что [pic] для всех отрицательных значений N.
Вычисление временной сложности.
Для того, чтобы проверить правильность временной оценки алгоритма, надо знать априорную оценку сложности.
Проверка вычислительной сложности алгоритма сводиться к экспериментальному сравнению двух или более алгоритмов, решающих одну и ту же задачу. При этом возникают две главные проблемы: выбор входных данных и перевода результатов эксперимента в графики кривых сложности.
Рекомендуем скачать другие рефераты по теме: эффективность диплом, реферат речь.
Категории:
Предыдущая страница реферата | 1 2 3 4 5 | Следующая страница реферата