Similar presentations:
Простейшие алгоритмы на языке Python
1. Простейшие алгоритмы на языке Python
ПРОСТЕЙШИЕ АЛГОРИТМЫНА ЯЗЫКЕ PYTHON
ВЫПОЛНИЛ:
КУЗНЕЦОВ
Е.И.
ГРУППА:108
РУКОВОДИТЕЛЬ:
САХАРЧУК
Г. С В Е ТЛ О Г РА Д ,
2 0 2 5
Т. В
2. Что такое алгоритмы?
Ч Т О ТА КО Е А Л ГО Р И Т М Ы ?ЭТО НАБОР ИНСТРУКЦИЙ,
КОТОРЫЕ ОПИСЫВАЮТ
П О СЛ Е Д О ВАТ Е Л Ь Н О СТ Ь
ДЕЙСТВИЙ ДЛЯ РЕШЕНИЯ
О П Р Е Д Е Л Ё Н Н О Й З А Д АЧ И .
ОНИ ПРЕДСТАВЛЯЮТ СОБОЙ
Л О Г И Ч Е С К У Ю С Т Р У К Т У Р У,
КОТО РАЯ ПО З ВОЛ Я ЕТ
ПРО ГРАММИСТАМ
Р Е А Л И З О В Ы ВАТ Ь РА З Л И Ч Н Ы Е
ФУН КЦ ИИ И О ПЕРАЦ ИИ.
В PYTHON СУЩЕСТВУЕТ
МНОЖЕСТВО ВСТРОЕННЫХ
А ЛГОРИТМОВ, КОТОРЫЕ
МОГУТ БЫТЬ ИСПОЛЬЗОВАНЫ
ДЛ Я ВЫ ПОЛ Н ЕН ИЯ РАЗЛ ИЧН Ы Х
З А Д А Ч . Н А П Р И М Е Р,
СОРТИРОВКА, ПОИСК
ЭЛЕМЕНТОВ, ПОСТРОЕНИЕ
ГРАФ О В И МН О ГО Е ДРУГО Е .
2
3. Основы сортировки в Python
ОСНОВЫСОРТИРОВКИ
В PYTHON
Функция sorted(). Это
универсальный метод сортировки.
В качестве обязательного
параметра она принимает любой
итерируемый объект и возвращает
отсортированный список,
созданный из его элементов. Эта
функция не меняет исходный
объект, а создаёт новый.
4. Основы сортировки в Python
ОСНОВЫСОРТИРОВКИ
В PYTHON
Метод списков .sort(). В отличие
от функции sorted(), он изменяет
сам список, в котором он вызван, и
не возвращает никакого значения
(точнее, возвращает None).
5. Введение в алгоритмы поиска
В В Е Д Е Н И Е В А Л ГО Р И ТМ Ы П О И С К АА ЛГОРИТМЫ ПОИСКА — ЭТО НАБОР МЕТОДИК ДЛЯ
НАХОЖДЕНИЯ КОНКРЕТНОГО ЭЛЕМЕНТА ИЛИ ГРУППЫ
ЭЛЕМЕНТОВ В СТРУКТУРЕ ДАННЫХ. В PYTHON
СУЩЕСТВУЕТ НЕСКОЛЬКО ПОПУЛЯРНЫХ А ЛГОРИТМОВ
П О И С К А , К О ТО Р Ы Е М ОЖ Н О И С П О Л Ь З О ВАТ Ь В
РАЗЛ ИЧН Ы Х С ИТУАЦ ИЯ Х. В ЭТОМ ВВЕДЕН ИИ МЫ
РАС СМО ТРИМ О С Н О ВН Ы Е ИЗ Н ИХ.
5
6. Линейный поиск
ЛИНЕЙНЫЙ ПОИСКЛинейный поиск — это самый
простой алгоритм поиска. Он
последовательно проверяет
каждый элемент списка, пока не
найдет нужный элемент или не
достигнет конца списка.
6
7. Бинарный поиск
БИНАРНЫЙ ПОИСКБинарный поиск более
эффективен, но требует, чтобы
массив был отсортирован. Этот
алгоритм работает, повторно деля
массив пополам, сравнивая
целевое значение со средним
элементом.
7
8. Введение в последовательность Фибоначчи
ВВЕДЕНИЕ В ПОСЛЕДОВАТЕЛЬНОСТЬФИБОНАЧЧИ
• это математическая последовательность, в которой
каждое число является суммой двух предыдущих. Она
начинается с двух единиц, и выглядит следующим
образом:
• 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144 и так далее.
• Формально последовательность определяется
рекурсивно:
• ( F(0) = 0 )
• ( F(1) = 1 )
• ( F(n) = F(n-1) + F(n-2) ) (для ( n > 1 ))
8
9. Рекурсивная реализация алгоритма Фибоначчи
РЕКУРСИВНАЯ РЕАЛИЗАЦИЯА Л Г О Р И Т М А Ф И Б О Н АЧ Ч И
В Э ТО Й Р Е А Л И З А Ц И И ФУ Н К Ц И Я F I B O N AC C I П Р И Н И М А Е Т О Д И Н П А РА М Е Т Р N — И Н Д Е К С
Ч И С Л А Ф И Б О Н АЧ Ч И , К О ТО Р О Е М Ы Х О Т И М В Ы Ч И С Л И Т Ь .
Е СЛ И N М Е Н Ь Ш Е И Л И РА В Н О 0 , ФУ Н К Ц И Я В О З В РА Щ А Е Т 0 .
Е СЛ И N РА В Н О 1 , ФУ Н К Ц И Я В О З В РА Щ А Е Т 1 .
В Д РУ Г И Х СЛ У Ч А Я Х ФУ Н КЦ И Я Р Е К У РС И В Н О В Ы З Ы ВА Е Т СА М У С Е БЯ Д Л Я N - 1 И N - 2 ,
С У М М И Р У Я Р Е З У Л ЬТ А Т Ы .
ЭТА РЕА ЛИЗАЦИЯ ПРОСТА, НО НЕЭФФЕКТИВНА ДЛЯ БОЛЬШИХ N, ТАК КАК ОНА ИМЕЕТ
Э К С П О Н Е Н Ц И А Л Ь Н У Ю В Р Е М Е Н Н У Ю СЛ О Ж Н О СТ Ь И З - З А П О ВТО Р Н О ГО В Ы Ч И СЛ Е Н И Я
О Д Н И Х И Т Е Х Ж Е З Н АЧ Е Н И Й . Д Л Я У Л У Ч Ш Е Н И Я П Р О И З В О Д И Т Е Л Ь Н О С Т И М О Ж Н О
И С П О Л Ь З О В АТ Ь М Е М О И З А Ц И Ю И Л И И Т Е РАТ И В Н Ы Й П О Д Х О Д .
10. Факториал
ФАКТОРИАЛВ Python для вычисления
факториала числа можно
использовать встроенный
модуль math, в котором есть
функция factorial(). Вот пример
того, как это можно сделать:
10
11. Факториал
ФАКТОРИАЛЕсли вы хотите реализовать
вычисление факториала
самостоятельно, можно
использовать рекурсивный подход
или цикл. Вот пример с
использованием рекурсии:
11
12. Проверка простоты числа
ПРОВЕРКА ПРОСТОТЫ ЧИСЛАДля проверки простоты числа в Python вы
можете использовать следующий простой
алгоритм. Этот код проверяет, является ли
заданное число простым:
Объяснение кода:
• Функция is_prime(n) принимает одно
число n.
• Если n меньше или равно 1, то оно не
является простым.
• Цикл проходит от 2 до квадратного
корня из n (включительно).
Если n делится на любое из этих
чисел без остатка, то n не простое.
• Если ни одно из условий делимости
не выполняется, тогда n является
простым числом.
12
13. Заключение
ЗАКЛЮЧЕНИЕИзучение простейших алгоритмов на Python предоставляет основу для понимания
программирования и решения задач. Рассмотрев основные типы алгоритмов, такие
как сортировка, поиск и рекурсия, и изучили их реализацию на Python. Эти алгоритмы
иллюстрируют ключевые концепции, включая структуры данных и оптимизацию.
Важно отметить, что понимание алгоритмов помогает не только в написании
эффективного кода, но и в разработке логического мышления. Алгоритмы учат нас
структурировать свои мысли, разрабатывать стратегии и находить решения.
В будущем, углубляя знания, можно переходить к более сложным алгоритмам и
алгоритмическим задачам, что откроет новые горизонты в программировании. Таким
образом, простейшие алгоритмы остаются основополагающими для дальнейшего
роста и развития в области информационных технологий.
13
culturology