Основы оценки сложности алгоритмов. Поиск НОД и НОК. Системы счисления

Содержание

Слайд 2

Занятие 2. Основы оценки сложности алгоритмов. Поиск НОД и НОК. Системы счисления

Занятие 2. Основы оценки сложности алгоритмов. Поиск НОД и НОК. Системы счисления

Слайд 3

Знакомство с понятием сложности алгоритма

При сравнении производительности различных алгоритмов решения задачи следует

Знакомство с понятием сложности алгоритма При сравнении производительности различных алгоритмов решения задачи
учитывать, что скорость выполнения компьютерных программ зависит от:
вычислительной производительности процессора ЭВМ,
объема кэш-памяти, оперативной памяти,
скорости доступа к запоминающим устройствам и т.п.
Поэтому время работы программы измеряется количеством операций
Главную роль играет характер возрастания числа элементарных операций при увеличении объема данных в задаче.
Кроме того, обычно учитывают объем памяти, которая используется во время работы программы
Эффективным решением олимпиадной задачи является такое, что:
укладывается в ограничения по времени работы программы
укладывается в ограничения ресурсов памяти, требующейся для выполнения программы
написано за кратчайшее время

Слайд 4

Сложность алгоритма

Сложность алгоритма – функция FA(n), определенная как наибольшее количество элементарных

Сложность алгоритма Сложность алгоритма – функция FA(n), определенная как наибольшее количество элементарных
действий при решении задачи с объемом входных данных n с помощью алгоритма А
Например:
на вход подается n чисел, следует вычислить их сумму
тогда сложность алгоритма определяется количеством операций сложения и линейно зависит от n

Слайд 5

Важные определения

 

Важные определения

Слайд 6

Важные определения

 

Важные определения

Слайд 8

Характер возрастания сложности

 

Характер возрастания сложности

Слайд 9

Классификация алгоритмов по сложности

Классификация алгоритмов по сложности

Слайд 10

Примеры задач

 

Примеры задач

Слайд 11

Примеры задач

 

Примеры задач

Слайд 12

Бинарный алгоритм Евклида

Бинарный алгоритм Евклида выполняется примерно на 60% быстрее традиционного.

Бинарный алгоритм

Бинарный алгоритм Евклида Бинарный алгоритм Евклида выполняется примерно на 60% быстрее традиционного.
Евклида основан на соотношениях (a>b):

Слайд 13

 

Поиск наименьшего общего кратного

Поиск наименьшего общего кратного

Слайд 14

b=a mod p -> остаток от деления a на p равен b
Пример:

b=a mod p -> остаток от деления a на p равен b
5 mod 3=8 mod 3=2
Свойства арифметических операций
(a+b) mod p = ((a mod p) + (b mod p)) mod p
(a-b) mod p = (p + (a mod p) – (b mod p)) mod p, при а>b
-a mod p= (p-a) mod p
(a*b) mod p = ((a mod p) * (b mod p)) mod p
Аналогичной формулы для деления нет! Поскольку обратный элемент по умножению существует только когда НОД (a, p)=1
Операцию деления можно выполнить только найдя обратный элемент по модулю p с помощью расширенного алгоритма

Арифметика остатков

Слайд 15

Система счисления – система записи чисел с помощью определенного набора цифр
Цифры –

Система счисления – система записи чисел с помощью определенного набора цифр Цифры
символы, с помощью которых записываются числа в системе счисления
Алфавит – совокупность символов, используемых для записи чисел
Основание системы счисления – количество цифр, используемых для записи чисел
Позиционная система счисления – система счисления, в которой количественный эквивалент цифры зависит от ее положения в записи числа
5047 = 5*1000 + 0*100 + 4*10 + 7*1

Позиционные системы счисления (ПСС)

Слайд 16

Базис ПСС – последовательность чисел, каждое из которых задает «вес» соответствующего разряда
Традиционная

Базис ПСС – последовательность чисел, каждое из которых задает «вес» соответствующего разряда
ПСС – система счисления, базис которой образуют члены геометрической прогрессии,
знаменатель P>1 – натуральное число,
значения цифр – целые числа
…, P-3, P-2, P-1, 1, P1, P2, P3, …
P – основание P-ричной системы счисления
Примеры нетрадиционных СС
Фибоначчиева система счисления
Алфавит: цифры 0 и 1
Базис: последовательность чисел Фибоначчи 1, 2, 3, 5, 8, 13, 21, 34, …
Факториальная система счисления
Алфавит: количество цифр увеличивается с ростом номера разряда
Базис: 1!, 2!, 3!, …

Позиционные системы счисления (ПСС)

Слайд 17

Первые числа в двоичной, восьмеричной и шестнадцатеричной системах счисления

Первые числа в двоичной, восьмеричной и шестнадцатеричной системах счисления

Слайд 18

Сложение
Вычитание
Умножение
Деление
(действуют обычные правила выполнения операций «в

Сложение Вычитание Умножение Деление (действуют обычные правила выполнения операций «в столбик», подробнее
столбик», подробнее рассмотрим в следующей лекции)

Арифметические
операции в ПСС

Имя файла: Основы-оценки-сложности-алгоритмов.-Поиск-НОД-и-НОК.-Системы-счисления.pptx
Количество просмотров: 27
Количество скачиваний: 0