Учитесь и получайте официальные документы БЕСПЛАТНО. Вы можете поддержать наш проект.
Регистрация
Вход
Электронный адрес:
*
Пароль:
*
Забыли пароль?
Запомнить меня
Авторизоваться
Зайти как гость
Твой путь к знаниям!
Учеба
Академии
Учителя
Рейтинг
Вопросы
Магазин
Сведения об образовательной организации
Новости
Помощь
О проекте
Курсы
Школа
Мини-МБА
Профессиональная переподготовка
Повышение квалификации
Сертификации
О курсе
Информация
Глоссарий
Дипломы
Вопросы и ответы
Студенты
Рейтинг выпускников
Мнения
Курс на Altube
Учебные программы
План занятий
Экзамен экстерном
Лекция 1
Введение
О стиле программирования
Имена переменных
Константы
Тип
Отступы в программе
Конструкция begin-end
Дополнение к стилю программирования
Конструкция обнуления массива
Сложность алгоритмов
Недостатки готовой программы
Оценка эффективности программы
Подсчет времени
Максимальное и среднее количество операций
Пример подсчета количества операций
Формула сложности алгоритма
Таблица соотношений n,c,c'
Обозначения, для времени работы алгоритма
Вопрос по теме
Деление (виды) алгоритмов
Задача на определение сложности алгоритма
Пояснение к задаче
Определение log N
Заключение
Логические операции и их свойства
Введение
Приоретет операций
Свойство операции AND
Свойство операции OR
Свойство операций в математическом понимании
Битовые операции
Сдвиги
Пример применения AND
Пример применения OR
Пример применения XOR
Пример применения NOT
Приоретет битовых операций относительно логических
Примеры
Тест 1
Лекция 2
Введение
Линейный поиск в массиве
Алгоритм линейного поиска в массиве
Прием барьерный элемент
Поиск второго максимума в массиве
Поиск отсутствующего в массиве числа
Бинарный поиск в массиве
Алгоритм бинарного поиска в массиве
Применение бинарного поиска
Двумерный массив
Задание двумерного массива
Поиск в двумерном массиве
Тест 2
Лекция 3
Введение
Функции
Определение функции
Описание функции
Типы результата
Примеры описаний
Использование функций
Преимущества
Недостатки
Локальные (внутренние) переменные функции
Параметры-значения
Параметры-переменные
Задача 1
Задача 2
Задача 3
Задача 4
Процедуры
Описание процедуры
Определение процедуры
Примеры описаний
Передача массива в параметре
Команда EXIT
Опережающее описание
Модули
Назначение модулей
Описание модулей
Interface часть
Implementation часть
Раздел инициализации
Неправильное использование имени функции
Рекурсия
Вступление
Определение рекурсии
Пример
Определение терминального условия
Теорема о взаимозаменяемости цикла и рекурсии
Тест 3
Лекция 4
Введение
Рекурсия
Задача "Ханойские башни"
Алгоритм решения задачи
Написание процедуры на паскале
Определение рекурсии
Основная программа
Анализ процедуры
Процесс выполнения рекурсии в компьютере
Глубина рекурсии
Определение стека процедуры функции
Схема стека
Задачи на рекурсию
Найти a в степени n
Вопросы к задаче
НОД 2-х чисел
Определение НОД
Алгоритм Евклида
Формула НОД
Доказательство
Полная формула вычисления НОД
Написание функции расчета НОД
Понятие терминального условия
Вопросы к задаче
НОД 3-х чисел
Определение НОК
Формула НОК через НОД
Проблемы, возникающие при решении задачи
Задача вывода чисел без циклов
Задача запоминания чисел без массива
Тест 4
Лекция 5
Введение
Рекурсия
Использование forward в Pascal
Вычисление числа Фибоначчи
Перебор. Заполнение матрицы
Перебор. Расстановки ладей
Разбор арифметического выражения
Динамическое программирование
Вступление
Пример 1: Фишка и клетки (задача о полоске)
Понятие барьерного элемента
Пример 2: Задача о хромом короле
Пример 3: Черепашка (максимум и путь)
Пример 4: Задача о ранце. Вариант 1
Определение динамической задачи
Пример 4: Задача о ранце. Вариант 2
Пример 5: Задача о разложении числа
Тест 5
Лекция 6
Введение
Динамическое программирование
Динамическое программирование и рекурсия
Задача о ранце с ограничениями
Переборное решение
Динамическое решение
Вывод формулы
Редакционные растояния
Определение редакционных растояний
Пример
Алгоритм расчета редакционных расстояний
Вывод формулы
Пример
Продолжение вывода формулы
Пример и окончание вывода формулы
Ответы на вопросы
Тест 6
Лекция 7
Введение
Сортировка выбором
Идея алгоритма
Код
Оценка времени работы
Сортировка вставками
Идея алгоритма
Код
Оценка времени работы
Сортировка пузырьком
Идея алгоритма
Код
Оценка времени работы
Метод "Разделяй и властвуй" как основа быстрых сортировок
Быстрая сортировка
Идея алгоритма
Разбор примера у доски
Выбор среднего элемента и оценка времени работы
Код
Обсуждение
Сортировка слиянием
Идея слияния двух массивов
Код процедуры сортировки
Код процедуры слияния
Оценка времени работы
Обсуждение быстрых сортировок
Тест 7
Лекция 8
Введение
Множества
Понятие и примеры множества чисел
Операции со множествами
Фанторы
Деление с остатком
Определение
Доказательство существования
Доказательство единственности
Примеры операции взятия по модулю
Свойства операции взятия по модулю
Теорема 1
Теорема 2
Теорема 3
Применение свойств взятия по модулю
Задача 1
Задача 2
Метод Паскаля.Признак делимости числа
Пример применения метода Паскаля
Взятие по модулю на языке Паскаль
Пример написания программы
Тест 8
Лекция 9
Введение
Алгоритм поиска пути выхода из лабиринта
Постановка задачи
Способы хранения лабиринта в памяти
Способы выхода из лабиринта
Реализация алгоритма пути выхода в виде процедуры DFS
Вид основной программы
Оптимизация процедуры DFS
Сокращение числа условных операций в DFS
Преобразование процедуры в функцию
Depth-First Search - алгоритм поиска в глубину
Понятие
Поиск произвольного пути выхода с помощью DFS
Breadth-First Search - алгоритм поиска в ширину
Понятие
Нахождение кратчайшего пути выхода с помощью BFS
Три способа записи кратчайшего пути в правильном порядке
Тест 9
Лекция 10
Введение
Графы. Определения и понятия
Формальное определение графа
Компоненты связности
Изолированные вершины
Висячие вершины
Степень вершин
Кратные ребра
Петли
Простой граф
Максимальное количество ребер в простом графе
Путь в графе
Простой путь
Цикл в графе
Связный граф
Минимальное количество ребер в простом связном графе (обсуждение)
Ориентированный граф
Представление графа в компьютере
Общие рассуждения
Список ребер
Матрица смежности
Упорядоченный список ребер
Списки смежных вершин
Ответы на вопросы
Тест 10
Лекция 11
Введение
Представление графов в памяти компьютера
Список рёбер
Матрица смежности
Сравнение способов задания графов
Списки смежных вершин
Выбор способа задания графов
Хранение ориентированных графов
Кодирование информации. Определение
Цели кодирования
Сжатие
Код Шеннона-Фано
Преффиксность
Проверка ошибок
Бит четности
Контрольная сумма
Проверка циклической избыточности
Исправление ошибок
Рефлективный код Грея.Кодовое расстояние
Пример
Секретность. Подлинность
Алгоритм шифрования с открытым ключём
Пример
Тест 11
Лекция 12
Введение
Операции с длинными числами
Варианты хранения длинных чисел
Тест 12
Экзамен
Вы можете
поддержать
этот курс.
Программирование и знакомство с алгоритмами
[+]
Опубликован:
16.04.2009
| Доступ:
свободный
| Студентов:
2822
/
271
| Оценка:
4.67
/
4.21
| Длительность:
06:54:00
Темы:
Программирование
,
Алгоритмы и дискретные структуры
,
Образование
Специальности:
Программист
Теги:
алгоритмы
,
поиск
,
программирование
,
процедуры
,
сортировка
Записаться
|
Вам нравится?
Нравится
31
студенту
|
Поделиться
|
Поддержать курс
|
Скачать видеокурс (mp4)
Лекция 3:
Функции и процедуры
< Лекция 1
||
Лекция 3
Аннотация:
Рассказывается об использовании функций и процедур, их преимуществах и недостатках, неправильном использовании имени функции.
Дальше >>
< Лекция 1
||
Лекция 3
Вопросы и ответы
вопросов: 0