Содержание
- 2. Кафедра медицинской кибернетики и информатики РНИМУ им. Н.И. Пирогова Минздрава РФ Отделение медицинской кибернетики МБФ и
- 3. Инструктаж по технике безопасности и противопожарной безопасности требования, обязательные для исполнения студентами в помещениях кафедры: В
- 4. Действия при пожаре: Студент, обнаруживший пожар или его признаки (задымление, запах гари или тления различных материалов,
- 5. Специальные требования: Студент обязан выполнять только ту работу, которая поручена и соответствует теме занятия. Не отвлекаться
- 6. Категорически запрещается: Работать на неисправном оборудовании. Приносить в учебные классы еду и напитки. Изменять настройки компьютеров.
- 7. Что бывает ЗА НАРУШЕНИЕ Лица, нарушающие требования инструкции: отстраняются от работы направляются на повторный инструктаж с
- 8. Общие требования к учащимся на кафедре Медицинской кибернетики и информатики Наличие белых халатов Выполнение правил техники
- 9. Алгоритмы программирования.
- 10. 1.Принципы архитектуры ЭВМ фон Неймана Использование двоичной системы счисления в вычислительных машинах. Программное управление ЭВМ. Память
- 12. ЭВМ Эниак 1946г. Компьютер 2019
- 13. 2.Области применения компьютеров: Обработка и хранение информации Анализ данных в различных областях Работа с Big Data
- 14. Стоматология
- 15. Новейщие информационные медицинские технологии . Телемедицина.
- 16. Единая государственная система здравоохранения РФ ИЭМК-Интегрированная электронная медицинская карта» ФХД-Финансово-хозяйственная деятельность Задание 1 – весь состав
- 17. Компьютерная томография
- 18. Основные направления IT будущего: По данным на 2019-2021гг ведущих аналитических изданий Cnews и Gartner, в целом
- 19. Темы докладов: Системы искусственного интеллекта в мед и здравоохранении Использование облачных решений в различных областях интернет
- 20. 3. Основные понятия IT Опр. 1. Информация – это сведения об объектах и явлениях окружающей среды,
- 21. Опр. 2.Информационный процесс это перенос и восприятие информации от исследуемого объекта к воспринимающему
- 22. 4. Основные понятия Опр. 3 . Компьютер – это комплекс тех. И программных средств, предназначенных для
- 23. Хранение информации в памяти компьютера Так человек видит изображение: 1111 1111 1101 1000 1111 1111 1110
- 24. Процессор — электронный блок, либо интегральная схема (микропроцессор), исполняющая машинные инструкции (код программ), главная часть аппаратного
- 25. Общая схема компьютера
- 26. 5.Единицы измерения информации Опр. 8. Бит (bit) – базовая единица измерения информации, может содержать только одну
- 27. 6. Основные направления теории кодирования
- 28. П.6 Алгоритмы и их свойства? Опр. Алгоритм – это совокупность действий, приводящих к достижению результата за
- 29. Свойства алгоритмов: Дискретность– это разбиение алгоритма на ряд отдельных законченных действий-шагов. Детерминированность - любое действие алгоритма
- 30. Существует несколько способов записи алгоритмов На практике наиболее распространены следующие формы представления алгоритмов: словесная (запись на
- 31. Виды алгоритмов Три основных вида алгоритмов: линейный алгоритм, разветвляющийся алгоритм, циклический алгоритм.
- 32. Словесный алгоритм. 1. Линейный алгоритм Алгоритм перехода через улицу на светофоре: Подойти к переходу Дождаться включения
- 33. Задание 1.Написать словесный алгоритм включения компьютера 2. Написать словесный алгоритм измерения площади учебного стола прямоугольной формы
- 34. 2.Разветвляющийся алгоритм – алгоритм с вариантами ( с условиями) Пример 1. Алгоритм перехода через улицу (какие
- 35. Задание 1. Написать словесный алгоритм с условием для покупки книги 2. Написать словесный алгоритм с условием
- 36. П.7. Графическая форма представления алгоритма. Блок-схемы. Таб 2. Основные виды блоков представлены в блок-схемах
- 37. Пример 1. Александр хочет позвонить Пете по городскому телефону. Надо: составить блок-схему, описывающую порядок действий Александра.
- 38. Пример 2. Ученику требуется купить учебник. Составить блок-схему, описывающую порядок действий ученика.
- 39. Блок-схема для примера 2
- 40. Пример 3. Даны числа a=2, b=7 . Вычислить сумму S и разность R чисел.
- 41. Блок-схема к примеру 3
- 42. Графическая реализация разветвляющегося алгоритма
- 43. Пример 4. Джон звонит Полу по городскому телефону, но трубку может взять не только Пол. Составить
- 44. Блок-схема для примера 4.
- 45. Пример 5. Ученику требуется купить учебник. В магазине в наличии оказался нужный учебник в жесткой и
- 46. Блок-схема для примера 5
- 47. 3.Циклические алгоритмы. Блок-схемы с циклом. Циклы бывают двух видов: с предусловием с постусловием. 1. В цикле
- 48. 1.Цикл с предусловием
- 49. 2.Цикл с постусловием.
- 50. Пример 3. Вася звонит Пете, но у Пети может быть занята линия. Составить блок-схему действий Васи
- 51. Пример 4. Ученику требуется купить учебник. Составить блок-схему, описывающую действия ученика в случае, если учебника нет
- 52. Пример 5. Даны числа a,b. Известно, что число a меняется от -10 до 10 с шагом
- 53. Проверочная работа 2.
- 54. Занятие 3.Циклические алгоритмы Опр. . Тело цикла – это набор инструкций, предназначенный для многократного выполнения. Опр.
- 55. Виды циклов: 1. С предусловием – если условие верно, то выполняется тело цикла 2. С постусловием
- 56. Цикл с предусловием- сначала проверяется условие, потом выполняется тело цикла
- 57. Задача 1 Найти сумму всех чисел от 5 до 45.
- 58. Цикл с постусловием сначала выполняется тело цикла, затем проверяется условие
- 59. Задача 2 Вычислить и вывести сумму степеней числа 2, пока она не станет больше 2500
- 60. Цикл со счетчиком. Выполнение цикла фиксированное число раз.
- 61. Задача 3 Найти произведение m чисел
- 62. Расчет по алгоритму на тестовых данных. Задача 4. Произвести расчет по алгоритму задачи 3, представленному в
- 63. Глава 2. Оценка эффективности алгоритмов. Псевдокод. П. 1. Оценка эффективности алгоритмов. Этапы: 1.Теоретический анализ 2.Проверочные испытания:
- 64. Измерение использования ресурсов. Измерения обычно выражаются как функция от размера входных данных n. Группа параметров А:
- 65. Группа Б. Для компьютеров, питающихся от батарей (например, ноутбуков) или для очень длинных/больших вычислений (суперкомпьютеры), измеряют
- 66. Опр. Вычислительной сложностью алгоритма называют функцию зависимости объёма работы, которая выполняется некоторым алгоритмом, от размера входных
- 67. Рассмотрение входных данных большого размера и оценка порядка роста времени работы алгоритма приводят к понятию асимптотической
- 70. Различные виды нотаций
- 71. Проверочная работа Задача 1. Разработать блок-схему алгоритма : Вычислить сумму нечетных чисел от 1 до n
- 72. П. Основные понятия теории множеств Опр.1. Множеством называется совокупность некоторых элементов, объединенных каким-либо общим признаком. Элементами
- 73. Опр.4. Множество, которое не содержит ни одного элемента, называется пустым и обозначается символом ∅. Опр.5. Множество
- 74. Основные числовые множества: N={1,2,3,4,…} – множество натуральных чисел; Z={…,-4,-3,-2,-1,0,1,2,3,4,…} – множество целых чисел (содержит все натуральные
- 75. Основные свойства отношений включения между множествами: ∅⊂А для любого множества А; А⊂А для любого множества А
- 76. Операции над множествами Опр.6 Пересечением множеств А и В называется множество С, состоящее из всех тех
- 77. 1.Свойства операции пересечения: А∩А=А; А∩∅=∅; А∩А’=∅; А∩U=А; А∩В=В∩А.
- 78. Операция объединения множеств Опр. 7 Объединением множеств А и В называется множество С, которое состоит из
- 79. 2.Свойства операции объединения: А∪А=А; А∪∅=А; А∪А’=U; А∪U=U; А∪В=В∪А.
- 80. Опр.8 Разностью множеств А и В называется множество С, состоящее из всех элементов множества А, не
- 81. 3.Свойства операции разности: 1) А\А=∅; 2) А\∅=А; 3) А\А’=А; 4) А\U=∅; 5) U\А=А’; 6) ∅\А=∅; 7)
- 82. Дополнение множества А
- 83. Приоритет выполнения операций Порядок выполнения операций над множествами: Равноправные действия слева направо, Сначала Скобки, далее Операция
- 84. Задачи по теории множеств.
- 85. Проверочная работа по теории множеств. На листочках
- 86. П.2. Псевдокод Приведем основные управляющие структуры псевдокода
- 87. Пример 1 хорошего начального псевдокода Если номер счета и пароль подходят, то показать основную информацию счета.
- 88. Пример псевдокода 2. Программа должна заменять сочетание букв "to" в текстовом файле на сочетание “on”. Программа
- 89. Этапы написания псевдокода Сначала опишите цель процесса. Если с помощью псевдокода можно решить задачу, он считается
- 90. В процессе описания алгоритма решения задачи на псевдокоде, пишите только по одному обращению в строке. Каждое
- 91. Переход от псевдокода к программе. Выполните расчет решения задачи по вашему псевдокоду с тестовыми входными данными
- 92. Команды языков программирования в псевдокоде Важными ключевыми словами могут быть: READ, WRITE, IF, ENDIF, ELSE, WHILE,
- 93. Конструкции языков в псевдокоде 1. IF Условие THEN Команды. Это означает, что отдельная инструкция будет срабатывать
- 94. Структуризация алгоритма в псевдокоде и программе BLOCK1 BLOCK2 BLOCK3 BLOCK2 BLOCK3 BLOCK1
- 95. Задача 1. Алгоритм решения квадратного уравнения на псевдокоде
- 96. Решение
- 97. Задача 2. Написать алгоритм в псевдокоде для расчета значения выражения a=k+b/n. k,b,n вводятся по одному. Задача
- 98. Проверочная работа 2. Задача 1.Посчитать в тексте кол-во вхождений последовательности “шин” во входной строке символов. Признак
- 100. П.1. Основные понятия Опр. 1. Символ — любой печатный знак Опр.2. Алфавит — конечное множество символов
- 101. Опр. 3. Слово — конечная последовательность символов из алфавита: Опр. 4. Длина слова — количество символов
- 102. 1.Объектами алгоритма являются слова и только они. 2.Алгоритм — описание способа преобразования одного (входного) слова в
- 103. Опр 5. Алгоритмы В и С эквивалентны в алфавите А (на множестве А*), если к каждому
- 104. Опр.6. Алгоритмические языки это формальные языки используемые для записи, реализации или изучения алгоритмов. Опр. 7. Языки
- 105. Описание языков Описание алгоритмического языка – это описание, которое содержит: алфавит — набор символов, используемых при
- 106. ОСНОВНЫЕ СПОСОБЫ КОМПОЗИЦИИ АЛГОРИТМОВ: 1) Суперпозиция алгоритмов. При суперпозиции двух алгоритмов A и B выходное слово
- 107. Рекурсия. Рекурсивная функция Опр. 8. В программировании рекурсия — вызов функции (процедуры) из неё же самой,
- 108. Опр. 10. Частично-рекурсивной функцией называется функция, которую можно построить из набора простых функций путем использования трех
- 109. Опр.11
- 110. Понятие вычислений тесно связано с понятием алгоритма, потому, что вычисления являются частным случаем процессов преобразования информации
- 111. ТЕЗИС ЧЕРЧА - совокупность всех частично вычислимых функций совпадает с совокупностью частично-рекурсивных функций. Тезис Черча постулирует
- 112. Термин рекурсивная функция в теории вычислимости используется для обозначения трёх классов функций: примитивно рекурсивные функции; общерекурсивные
- 113. Алгоритм — описание способа преобразования одного (входного) слова в другое (выходное). Рассмотрим алгоритмы, как процессы преобразования
- 114. П.2.Формальное определение алгоритма 1). Машина Тьюринга.
- 116. Автомат может выполнять три элементарных действия: записывать в видимую клетку новый символ (менять содержимое других клеток
- 118. Программа для машины Тьюринга Слева перечисляются все состояния, в которых может находиться автомат, сверху – все
- 119. Правила выполнения программы: К началу выполнения программы машина Тьюринга находится в начальной конфигурации: 1) на ленте
- 120. 3. В таблице отыскивается ячейка на пересечении первой строки (т.к. автомат находится в состоянии q1) и
- 121. Окончание работы программы и результат В целом возможны два исхода работы МТ над входным словом: 1)
- 122. гипотеза Тьюринга – всякий разрешимый алгоритм может быть представлен в виде машины Тьюринга Опр. Алгоритмически разрешимые
- 123. П.4. Нормальные алгоритмы Маркова
- 124. Уточним:
- 127. Правило выполнения нормального алгоритма Маркова 1.На каждом шаге входящие в НАМ формулы подстановки просматриваются сверху вниз
- 129. Применимости НАМ: В обоих случаях говорят, что НАМ применúм к входному слову. Если НАМ никогда не
- 130. Вставка и удаление символов в НАМ
- 132. Правильное решение:
- 135. Доп. Теорема 2 Маркова Существует такой универсальный алгоритм U, который для любого N и любого входного
- 136. Глава 4. Типы и структуры данных. П.1. формальные языки и языки программирования Опр 1. Формальным языком
- 137. Языки программирования. Для описания языка программирования нужно определить: набор лексических, синтаксических, грамматических правил, определяющих внешний вид
- 140. Таблица ASCII: символ ASCII код двоичный код Таблица ASCII -название таблицы кодировки, в которой распространённым печатным
- 141. Коды ASCII
- 142. Таблица Unicode — стандарт кодирования символов, включающий в себя знаки почти всех письменных языков мира. 1991г.
- 144. Цикл работы команды программы 1. Извлечение инструкции из памяти: используя текущее значение счетчика команд, процессор извлекает
- 145. П.2. Типы данных. Опр. 1. Типом данных называется класс данных, характеризуемый членами класса и операциями, которые
- 146. Классификация типов данных
- 147. 1). Простые типы данных.
- 148. 2). Составные типы данных Массив — это набор значений одного типа, хранящихся последовательно в памяти. Структуры
- 149. Так в Питоне есть следующие типы данных Числа Логические Строки Байты Массивы байтов Списки Кортежи Множества
- 150. П.3.Числовой тип данных ОПЕРАЦИИ с переменными и константами числового типа: стандартные арифметические операции, операции сравнения, ввод,
- 151. П.4. Символьный тип данных Операции: Ввод символьных значений Вывод Присваивание Все операции сравнения ( по ASCII
- 152. П.5. Логический тип данных.Boolean. Основные понятия алгебры логики. Опр. 2. Логический тип данных - булевский тип,
- 153. Доступные операции с этим типом данных: И (логическое умножение) (AND, &, *), ИЛИ (логическое сложение) (OR,
- 154. Основные понятия Алгебры логики. Опр. 4. Логическое высказывание — это любoе повествовательное пpедлoжение, в oтнoшении кoтopoгo
- 155. Задание 1. Пусть a = “это утро ясное”, b = “это утро теплое”. Выразите следующие формулы
- 156. Основные логические операции
- 157. Таблицы истинности- значение функции при всех наборах переменных Отрицание Коньюнкция Дизьюнкция
- 158. Дополнительные логические операции
- 159. Таблицы истинности доп. лог. операций Эквивалентность Следование Искл. ИЛИ - XOR
- 160. Законы алгебры логики
- 163. Последовательность выполнения операций: Скобки логическое отрицание логическое умножение логическое сложение исключающее ИЛИ логическое следование эквивалентность
- 164. Семинар 9.
- 165. Алгоритм построения таблицы истинности логической функции(выражения)
- 167. Пример 1.таблица истинности для выражения
- 168. Задачи 2.Самост. реш
- 169. Пример 2. Составим таблицу истинности для формулы которая содержит две переменные x и y:
- 170. Оператор IF и логические выражения
- 174. Проверочная работа по теме: Алгебра логики 1.
- 175. Задача 4. Написать псевдокод решения задачи с использованием конструкций IF-THEN-ELSE и логических операторов AND, OR, NOT
- 176. Семинар 10.
- 177. Задание 2. Написать псевдокод решения задачи с Использованием конструкций IF-THEN-ELSE и логических операторов AND, OR, NOT
- 178. Задание 3. Написать псевдокод решения задачи с использованием конструкций IF-THEN-ELSE и логических операторов AND, OR, NOT
- 179. Задача 4. Псевдокод к задаче, используя цикл с предусловием и for: Вводятся данные 7 пациентов: рост,
- 180. Тип данных – Массивы. Опр. Массив — это структура однотипных данных, занимающих непрерывную область памяти. Характеристики
- 181. Объявление массивов: Массив в языках пр-я задается следующим образом: тип_элементов идентификатор[размер элемента], где тип_элементов — произвольный
- 182. Инициализация – заполнение массива: i n t l e a p [ ] ={3 1 ,
- 183. Размерность массивов: Массивы могут быть одномерными, двумерные (матрицы), трехмерные и т.д. Размерность массивов может быть ограничена
- 184. Представления 1-, 2-, 3-х мерных массивов
- 185. Алгебра матриц Матрица – 2-мерный массив данных. Действия: Сложение матриц Вычитание матриц Умножение матрицы на число
- 189. Умножение матриц
- 190. Работа с массивами: Для сложения, вычитания, умножения, деления образования формул массивы должны быть одного размера.
- 191. Массивы в Питоне Python не имеет встроенной поддержки массивов, но вместо этого можно использовать списки (list)
- 192. Двумерные массивы в Питоне.
- 193. Многомерные списки в Питон.
- 195. Задачи ДЗ– алгебра матриц Задача1. Сложить и – массив B и 2B. Задача 2. Умножить на
- 196. Проверочная работа. Задача 4. Написать псевдокод: Описать 2-мерный массив A целых чисел 2*8, инициализировать его и
- 197. На дом. Задача 7. Описать 2-мерный массив ALA размера m*n (вводятся). Инициализировать массив. Найти в этом
- 198. Рекурсия в программировании Опр. 1. В программировании рекурсия — вызов функции (процедуры) из неё же самой,
- 199. Одномерные и двумерные массивы – основные задачи. 1.1.Одномерные массивы: Объявление массива Инициализация, заполнение Сортировка Поиск Замена
- 200. Сортировка массива - преобразование последовательности элементов в неубывающую (или невозрастающую) последовательность. Последовательность элементов {Ai} называют неубывающей,
- 201. Элементы массива можно сортировать: по возрастанию — каждый следующий элемент больше предыдущего — А[1] по неубыванию
- 202. Методы сортировки массива 1. При первой итерации цикла элементы массива попарно сравниваются между собой. Если теку-щий
- 203. Сортировка методом Пузырька
- 204. 2.Сортировка методом выбора (по возрастанию) в массиве ищется минимальный элемент и ставится на первое место (меняется
- 205. Начертим блок-схему метода выбора
- 206. Блок-схема алгоритма сортировки методом выбора
- 207. Задача 1.Написать псевдокод для решения задачи : Упорядочить по возрастанию массив A из N эл-в методом
- 208. 3. Сортировка вставками Алгоритм: Временная сложность - O(n2).
- 209. Начертим блок-схему метода сортировки вставками
- 210. Блок-схема сортировки вставками
- 211. Задача 2. 1.Написать псевдокод для решения задачи : Упорядочить по возрастанию массив B из M эл-в
- 212. 4.Сортировка Шелла. Усовершенствованный вариант метода сортировки вставками. Алгоритм: сначала сравниваются и сортируются между собой значения, стоящие
- 213. 5.Быстрая сортировка или quick sort: Алгоритм: Выберем и запомним средний элемент массива (присвоим X=67): Инициализируем две
- 214. 6.Сортировка слиянием. Алгоритм: 1.Массив делится на два подмассива, а затем происходит: Сортировка левой половины массива (рекурсивно)
- 215. 7. Пирамидальная сортировка. Может рассматриваться как усовершенствованная сортировка пузырьком, в которой элемент всплывает по многим путям.
- 216. ДЗ упорядочить массив по убыванию A=[1,7,9,15,10,0,3,8,18,5] – методами Сортировки Пузырьком и Быстрой сортировки. Псевдокод. – методами
- 217. Задачи проверочная: составить блок-схемы к алгоритму: Задача 1. Дан массив из 11 элементов. Упорядочить по возрастанию
- 218. Задача 3. Дан массив 20 целых чисел, часть которых - 0. Упорядочить массив, удалив нули со
- 219. Алгоритмы поиска значения в массиве 1. Линейный поиск – алгоритм: поиск значения осуществляется cравнением значения текущего
- 220. 3.Интерполяционный поиск - алгоритм производит предсказание области местонахождения элемента по расстоянию между ключом и текущим значением
- 221. Одномерные и двумерные массивы – основные задачи. 1.1.Одномерные массивы. 1.1.Поиск max, min элемента массива
- 222. Задачи: Задача 1. Дан массив целых чисел. Количество чисел N вводится с клавиатуры. Все числа различны.
- 223. 1.1.Двумерные массивы: Объявление массива Инициализация, заполнение Сортировка элементов в столбце или строке Поиск элементов в столбце
- 224. Семестр 2. Дисциплина Вычислительная математика. Алгоримы на Python.
- 225. Современная вычислительная математика включает в круг своих проблем изучение особенностей вычисления с применением компьютеров. На её
- 226. Вычислительная математика – это раздел математики, включающий в себя теорию численных методов и алгоритмов решения математических
- 227. Глава 1. Структуры данных: Строки, Списки, Деревья. П.1. Тип - Строки Опр. 1. Строка – это
- 228. В языках программирования возможны следующие операции со строками: получение символа по индексу; конкатенация (соединение) строк; получение
- 229. Функции и процедуры со строковыми переменными в ПИТОНЕ
- 230. Продолжение - функции строк в Питоне
- 231. П.2. Динамические структуры в ЯП. Динамические структуры данных – это структуры данных, память под которые выделяется
- 232. Динамическая структура данных характеризуется тем, что: она не имеет имени; этой структуре выделяется память в процессе
- 233. Особенности динамических структур Каждой динамической структуре данных сопоставляется статическая переменная типа указатель (ее значение – адрес
- 234. Для установления связи между элементами динамической структуры используются указатели, через которые устанавливаются явные связи между элементами.
- 235. Порядок работы с динамическими структурами данных : создать (отвести место в динамической памяти); работать при помощи
- 236. Классификация динамических структур данных: Для представления данных, у которых конфигурация, размеры и состав могут меняться в
- 237. Динамическая структура может занимать несмежные участки оперативной памяти. Динамические структуры широко применяют и для более эффективной
- 238. п.3. Тип данных – 2).Списки Опр.2. Списком называется упорядоченное множество, состоящее из переменного числа элементов, к
- 239. В языках программирования возможны следующие операции со списками: 1.создание списка; 2.печать (просмотр) списка; 3.вставка элемента в
- 240. 3.1.Односвязные списки. Опр.3. Односвязный список – это структура данных, представляющая собой последовательность элементов, в каждом из
- 241. 3.2. Двусвязный список Опр.4. Двунаправленный (двусвязный) список – это структура данных, состоящая из последовательности элементов, каждый
- 242. Списки в Питон – это упорядоченные изменяемые коллекции объектов произвольных типов. В Питоне к списками применимы
- 243. Продолжение - Методы списков в Питоне
- 244. Типы 3.Стек и 4.Очередь -динамические структуры данных, которые можно организовать на основе линейного списка. 3). Стек
- 245. Операции со стэком: создание стека; печать (просмотр) стека; добавление элемента в вершину стека; извлечение элемента из
- 246. 4) Очередь – это динамическая структура данных, представляющая собой последовательность элементов, образованная в порядке их поступления.
- 247. Основные операции, производимые с очередью: создание очереди; печать (просмотр) очереди; добавление элемента в конец очереди; извлечение
- 248. П.5.Тип данных 5.Дэк (дек) Опр.5. Дек (двухсторонняя очередь) – это структура данных, представляющая собой последовательность элементов,
- 249. Опр.6.дек с ограниченным входом – из конца дека можно только извлекать элементы; Опр.7.дек с ограниченным выходом
- 250. Основные операции с деком: 1.создание дека; 2.печать (просмотр) дека; 3.добавление элемента в левый конец дека; 4.
- 251. П.6.Тип данных-Деревья Опр.8. Дерево – это динамическая структура данных, представляющая собой совокупность элементов и отношений, образующих
- 252. Опр. 12. Корень дерева – это начальный узел дерева, ему соответствует нулевой уровень. Опр.13. Листья дерева
- 253. Опр.15. Потомки – это все вершины, в которые входят ветви, исходящие из одной общей вершины. Опр.16.
- 254. Опр.18.Степень вершины – это количество дуг, которое выходит из этой вершины. Опр.19.Степень дерева – это максимальная
- 255. Опр. 22. Обход дерева – это упорядоченная последовательность вершин дерева, в которой каждая вершина встречается только
- 256. П.7.Тип данных 7. Бинарные деревья Опр. 23. Бинарное (двоичное) дерево – это дерево, в котором каждая
- 257. Каждая вершина бинарного дерева является структурой, состоящей из четырех видов полей: 1. информационное поле (ключ вершины);
- 258. Адресация в бинарном дереве
- 259. Основными операциями с бинарными деревьями, являются: создание бинарного дерева; печать бинарного дерева; обход бинарного дерева; вставка
- 260. Глава 2. Задача поиска подстроки в строке. П.1. Определения. Алфавит – конечное множество символов. Строка (слово)
- 261. Постановка задачи поиска подстроки в строке: Пусть задана строка, состоящая из некоторого количества символов. 1) .
- 262. П.2. Наивный (прямой) алгоритм поиска подстроки в строке. Суть алгоритма: 1). В начальный момент происходит посимвольное
- 263. Алгоритм прямого поиска Идея алгоритма: 1. I=1, 2. сравнить I-й символ массива T с первым символом
- 264. Вычислительная математика. Лекция 2. Алгоритмы поиска Кнутта-Морис –Пратта. Хэширование. Алгоритм поиска Рабина-Карпа.
- 265. П.3.Алгоритм Кнута, Морриса и Пратта. Префикс-функция: Пусть дана строка S длины n. Опр.4. Префикс-функция – это
- 266. Пример 1. Для строки "abcabcd" префикс-функция равна: [0,0,0,1,2,3,0], так как: у строки "a" нет нетривиального префикса,
- 267. Ответ на пример 2 (она равна: [0,1,0,1,2,2,3])
- 268. Алгоритм Кнута-Мориса-Пратта Суть алгоритма: сдвиг подстроки выполняется не на один символ на каждом шаге алгоритма, а
- 269. Пример 1. Пример. (Символы, подвергшиеся сравнению, подчеркнуты.) После частичного совпадения начальной части образа W с соответствующими
- 270. П.4. Хеширование Опр. 5. Хеш-функция — функция, которая по определенному алгоритму преобразовывает массив входных данных произвольной
- 271. Опр. 7.Хеш-таблица – это структура данных, реализующая интерфейс ассоциативного массива, она позволяет хранить пары вида "ключ-значение"
- 272. Опр. 7.Коллизия –ситуация, когда разным ключам соответствует одно значение хеш-функции (ключи в этом случае называются синонимами
- 273. Хеш-функция должна удовлетворять следующим условиям: функция должна быть простой с вычислительной точки зрения; функция должна распределять
- 274. Коллизии нарушают однозначность соответствия между хеш-кодами и данными. Существуют способы преодоления коллизий: метод цепочек (внешнее или
- 275. П.5.Разрешение коллизий. 1.Разрешение коллизий при помощи цепочек элементы множества, которым соответствует одно и то же хеш-значение,
- 276. 2.Разрешение коллизий при помощи открытой адресации При открытой адресации все записи хранятся в самой хеш-таблице. Каждая
- 277. Задача 1. Первое и последнее вхождение Дана строка. Если в этой строке буква f встречается только
- 278. Задача 2. Дублирование фрагмента Дана строка, в которой буква h встречается как минимум два раза. Повторите
- 279. Задача 3. Замена подстроки Дана строка. Замените в этой строке все цифры 5 на слово Five.
- 280. Банковские проценты Вклад в банке составляет x рублей. Ежегодно он увеличивается на q процентов, после чего
- 281. Задача ДЗ Написать программу простого поиска подстроки в строке. Можно использовать циклы, if
- 282. П.6.Алгоритм Рабина — Карпа это алгоритм поиска подстроки в строке, который ищет шаблон, то есть подстроку,
- 284. Алгоритм Рабина-Карпа Пусть алфавит D={0, 1, 2, 3, 4, 5, 6, 7, 8, 9}, то есть
- 285. 23590(mod 13)=8, 35902(mod 13)=9, 59023(mod 13)=9, … k1=31415≡7(mod 13) – вхождение образца, k2=67399≡7(mod 13) – холостое
- 286. Задача на циклы 1
- 287. Задача 2. Номер числа Фибоначчи
- 288. Задача 3. Фрагменты. Дана последовательность натуральных чисел, завершающаяся числом 0. Определите, какое наибольшее число подряд идущих
- 289. Задача 4. Монотонный фрагмент Максимальная длина монотонного фрагмента Дана последовательность натуральных чисел, завершающаяся число 0. Определите
- 290. Задача 5. Банковские проценты Вклад в банке составляет x рублей. Ежегодно он увеличивается на p процентов,
- 291. Функция в Python
- 293. ЗАДАЧА 1. Найти число сочетаний
- 294. Функции в Python Вместо повторения в алгоритме выше лучше сделать одну функцию, вычисляющую факториал любого данного
- 295. Синтаксис функции в Python
- 296. Теперь мы можем использовать нашу функцию несколько раз. В этом примере мы трижды вызываем функцию factorial
- 297. Функция нахождения максимума из двух чисел Итак – задача нахождения наибольшего из двух или трех чисел.
- 298. !!! Внутри функции можно использовать переменные, объявленные вне этой функции def f(): print a a =
- 299. Задача 1. Напишите функцию min4(a, b, c, d), вычисляющую минимум четырех чисел, которая не содержит инструкции
- 300. Задача 3.
- 301. Задача 4. Минимальный делитель числа
- 302. Лекция 3. Суффиксные деревья
- 303. П.9. Суффиксные деревья. Суффиксное дерево — это способ представления текста. Опр.8. Бором называется префиксное дерево –
- 304. Для сокращения количества вершин оптимизируем бор: рассмотрим цепочку вершин бора, такую что из каждой вершины исходит
- 305. Опр. 9. Сжатый бор — это корневое дерево, на каждом ребре которого написана непустая строка, обладающее
- 306. Опр.10. Суффиксным деревом строки S называется сжатый бор, построенный на всех суффиксах S. Опр. 11. Суффиксное
- 307. Пример 1. Рассмотрим строку "алгоритм", у нее есть следующие суффиксы: Номер Суффикс 0 "алгоритм" 1 "лгоритм"
- 308. Пример 2. Суффиксное дерево строки abca Пример 3. Суффиксное дерево строки xabxa
- 309. Основные задачи, решаемые с использованием суффиксных деревьев и суффиксных массивов: Определение количества различных подстрок строки s.
- 310. Продолжение. Задачи, решаемые с помощью суффиксных деревьев: 4.Определение длины наибольшего общего префикса для двух подстрок строки
- 311. П. 10. Алгоритм Лемпеля-Зива – алгоритм сжатия данных. В 1977 году Абрахам Лемпель и Якоб Зив
- 312. Алгорим Лемпеля-Зива На каждом шаге выводится тройка: (d-смещение относительно текущей позиции, L-длина подстроки, символ a). В
- 313. Рассмотрим реализацию 2: Если в тексте встретится повторение строк символов, причем запись о длине данной строки
- 314. Глава 3. Теория графов и использование графов в алгоритмах. П.1. основные термины теории графов. Опр. 1
- 315. Опр. 4. Два ребра называются кратными, если они соединяют одну и ту же пару вершин. Опр.5.Ребро
- 316. Опр. 8. Маршрутом в графе называют конечную последовательность вершин, в которой каждая вершина (кроме последней) соединена
- 317. Опр.11.Ориентированным маршрутом (или путём) в орграфе называют конечную последовательность вершин и дуг, в которой каждый элемент
- 318. В теории графов два типа объектов называются циклами: 1). замкнутый обход, состоит из последовательности вершин, начинающейся
- 319. Опр.14. Степенью вершины в неориентированном графе называется число инцидентных данной вершине ребер (при этом петля считается
- 320. Свойства графов A. В любом графе число вершин нечетной степени – четно. Этот факт называется «леммой
- 321. П.2. Способы представления графов в памяти. Представление графов в памяти – это способ хранения информации о
- 322. Способы представления графов в памяти: Матрица смежности Списки смежных вершин Список ребер
- 323. 1.Матрица смежности При представлении графа матрицей смежности информация о ребрах графа хранится в квадратной матрице, где:
- 324. 2. Хранение графа в виде списка ребер. При представлении графа списком ребер для каждого ребра графа
- 325. 3. Представление графа списками смежности 1. Для каждой вершины i хранится список W[i] смежных с ней
- 326. П.3.Алгоритмы поиска в графе. Опр.16. Вершина, которая еще не посещена, называется новой. После посещения, вершина становится
- 327. Опр.17. Взвешенным графом называется граф, у которого любая пара вершин (ребро) снабжено числом, характеризующим отношение этих
- 328. Опр. 18. Кратчайшим путем называется путь в графе, содержащий наименьшее количество ребер. Опр. 19. Связный граф
- 329. 1.Алгоритм поиска в глубину. Алгоритм поиска (или обхода) в глубину реализует обход ориентированного или неориентированного графа,
- 330. Алгоритм является рекурсивным — для обхода всего графа нужно переместиться в соседнюю вершину, после чего повторить
- 332. Задачи, решаемые поиском в глубину: Поиск элементов Поиск компонент связности Поиск циклов и др. Оценка времени
- 333. Лекция и семинар 7.
- 334. 3.2. Поиск в ширину в графе. Идея поиска в ширину состоит в том, чтобы посещать вершины
- 335. Оценка времени работы алгоритма поиска в ширину: Если граф задан списками смежности , то время работы
- 336. Алгоритм поиска в ширину: Для каждой вершины в массиве d будем хранить кратчайшее расстояние до этой
- 337. П.4. Задача 1. Вычисление Количества путей в графе Пусть есть схема дорог, связывающих города А, Б,
- 338. Рекуррентная формула: Если в город Z можно приехать только из городов B, C, D, то число
- 339. Решение Задачи 1
- 340. Задача 2. На рисунке — схема дорог, связывающих города А, Б, В, Г, Д, Е, Ж,
- 341. Решение:Начнем считать количество путей с конца маршрута – с города К. NX — количество различных путей
- 342. Задачи на вычисление путей в графе с избегаемыми вершинами Задача 3. На рисунке — схема дорог,
- 343. Решение задачи 3:количество путей до города Х = количество путей в любой из тех городов, из
- 344. А = 1. Б = А = 1. В = А + Б = 2. Г
- 345. Задача 4. На рисунке – схема дорог, связывающих пункты А, Б, В, Г, Д, Е, Ж,
- 346. Решение: А = 1. Б = А = 1. В = А = 1. Г =
- 347. П.5. Эйлеров цикл. Опр. 19. Эйлеровым циклом в графе называется цикл, содержащий все ребра графа. Опр.
- 348. Эйлеров цикл в графе означает, что следуя вдоль цикла, можно нарисовать граф на бумаге, не отрывая
- 349. П.6.Задача 2. Задача о Кенигсбергских мостах: У жителей Кенигсберга была загадка: как пройти по всем городским
- 350. В 1736 году фон Эйлер решил Задачу о семи мостах. Решение Эйлера: Нельзя пройти по всем
- 351. Решение задачи Эйлера: На схеме города - графе мостам соответствуют линии - ребра графа, а частям
- 352. Теорема 1. Если граф обладает эйлеровым циклом, то он является связным, а все его вершины —
- 353. Теорема 3. Если граф G обладает эйлеровым путем с концами VA и VB и VA не
- 354. Контрольная
- 355. Глава 3. Математическое программирование – – это раздел прикладной математики, посвященный теории и методам решения конечномерных
- 356. пI. Динамическое программирование Сущность метода Динамического программирования - рассмотрим операцию О, состоящую из ряда последовательных m-этапов
- 357. Совокупность всех шаговых управлений является управлением операцией в целом. Обозначим управление - X: X( х1, х2,
- 358. В основе решения всех задач динамического программирования лежат принципы оптимальности и вложенности: Принцип 1. “Принцип оптимальности”
- 359. Рассмотрим особенности математической модели динамического программирования задача оптимизации формулируется как конечный многошаговый процесс управления; целевая функция
- 360. Виды задач, решаемых методами динамического программирования Задача о нахождении кратчайшего либо наилучшего пути Задача вычисления полного
- 361. Задача о нахождении кратчайшего пути в графе. Пусть транспортная сеть состоит из 10 узлов, часть из
- 362. Процедура решения задач методом динамического программирования состоит из 2-х стадий: 1. С конца в начало –предварительной
- 364. Понятие о NP-полных задачах. Примеры. Опр. 2. P – класс задач, решаемых за полиномиальное (от размера
- 365. Список Карпа — список, состоящий из формулировки и доказательства NP- полноты 21 задачи, опубликованный Ричардом Карпом
- 366. Алгоритм имитации отжига — алгоритм решения различных оптимизационных задач. Основан на моделировании реального физического процесса, который
- 368. Лев Семенович Понтрягин –выдающийся российский ученый
- 369. Родился 21 августа (3 сентября) 1908 г., Москва.
- 370. В 14 лет Лев потерял зрение в результате несчастного случая (взорвавшийся примус вызвал сильнейший ожог лица).
- 371. Этапы пути Л. С. Понтрягин окончил физико-математический факультет МГУ по специальности «чистая математика» в 1929 г.
- 372. Ученая степень доктор физико-математических наук присуждена без защиты диссертации в 1935 г. Звание профессора по Специальности
- 373. Области научных интересов Л. С. Понтрягина топология и топологическая алгебра, теория дифференциальных уравнений, теория управления и
- 374. ТРУДЫ – более 300. Математическая теория оптимальных процессов. — 2-е изд. — М.: Наука, 1969. —
- 375. Почетные звания и награды Почётный член Лондонского математического общества (1953) Почётный член Международной академии «Астронавтика» (1966)
- 376. Хобби 1.Музыка 2.Лыжи 3. Коньки 4.Литература
- 378. Скачать презентацию