- •Методы программирования
- •Структуры данных. Деревья.
- •Прошитые бинарные деревья
- •Представление деревьев в виде бинарных деревьев
- •Структуры данных. Линейные списки.
- •Пользовательские интерфейсы
- •Сортировка и поиск
- •Методы сортировки выбором
- •Сортировка простым выбором.
- •Сортировка квадратичным выбором
- •Сортировка кубическим выбором
- •Естественное двухпутевое слияние
- •Методы сортировки подсчётом
- •Пирамидальная сортировка
- •Сортировка убывающими вставками. Метод Шелла
- •Метод Хоара
- •Поразрядная обменная сортировка
- •Методы поиска
- •Методы поиска среди упорядоченных данных
- •Семестр 2
- •Алгоритмы
- •Обход графа в глубину
- •Обход графа по уровням
- •Транзитивное замыкание
- •Поиск сильносвязных компонентов в графе
- •Поиск кратчайших путей
- •Минимальное остовное дерево
- •Генерация случайных чисел
- •Другие методы генерации последовательностей
- •Статистические критерии
- •Эмпирические критерии
- •Технологии параллельных вычислений
- •Порождение сочетаний, перестановок, кодов Грея
- •Программирование защиты от ошибок
- •Проверка допустимости промежуточных результатов
- •Сквозные просмотры
- •Метод оценки программ
- •Метод структурного тестирования
- •Функциональное тестирование
Пользовательские интерфейсы
Совокупность программных и аппаратных средств, обеспечивающих взаимодействие компьютера и человека.
Типы интерфейсов:
процедурно ориентированные. Основной элемент — процедура или действие над данными для получения результата
объектно ориентированные. Манипуляция объектами предметной области.
Процедурно ориентированные интерфейсы бывают трёх типов:
примитивные. Интерфейсы в консольном режиме.
интерфейсы меню. Дают возможность выбирать операцию из списка. Рекомендуется значений 5-7, иначе реализовать иерархические меню.
интерфейсы со свободной навигацией. GUI. Возможность манипуляции объектами на экране, кнопочное меню и т.д. Перемещение пиктограмм и т.п.
Однодокументные и многодокументные интерфейсы.
Психофизические особенности человека, связанные с восприятием, обработкой и запоминанием информации.
Фокус внимания человека.
Следует учитывать, что в процессе обработки информации человек сравнивает её с предыдущей. (A 13 C).
Краткосрочная память человека способна хранить приблизительно 7 элементов. Длительность краткосрочного хранения информации порядка 30 секунд.
Тёплые и холодные цвета.
Особенности восприятия звука: звук — сильный раздражитель. Использовать в крайнем случае.
Модели интерфейсов
модель программиста. Удобная для программиста. Может быть неудобна для пользователя.
модель пользователя. В интерфейсе используются объекты предметной области.
программная модель. Компромисс между двумя предыдущими моделями.
Критерии оценки интерфейсов пользователями:
простота запоминания и освоения возможностей системы
время получения результата при каждом использовании системы (количество нажатий должно быть наименьшим)
субъективная удовлетворённость от эксплуатации системы
Для профессионалов наиболее важными считаются 2 и 3 критерии. Для непрофессионала важны 1 и 3.
Сортировка и поиск
Литература: Кнут. т.3.
Методы сортировки делятся на две больших группы:
методы внутренней сортировки данных. Методы поиска с использованием только оперативной памяти.
методы внешней сортировки данных. С использованием внешней памяти.
Критерии оценки методов сортировки:
количество шагов алгоритма для упорядочивания N записей.
количество сравнения ключей между собой.
количество пересылок записей. Может учитываться длина.
Время обработки заданного объёма данных.
Объём необходимой оперативной памяти.
Сложность алгоритмов и программ для реализации методов.
Эффективность работы метода зависит от характера упорядоченности данных (например полностью упорядоченные, полностью неупорядоченные, частично упорядоченные).
Методы внутренней сортировки делятся на группы:
методы сортировки выбором.
Сортировка вставками. Наиболее частое действие — вставка ключа между двумя другими.
Обменная сортировка. Основное — обмен значений ключей.
Распределяющая сортировка. Главное — распределение ключей по группам.
Сортировка подсчётом.
Сортировка слиянием.
Методы сортировки выбором
Сортировка простым выбором.
Иллюстрация:
Исходное: 68 85 22 55 25 60
Ищем максимум: 85. Переставляем максимум в конец. Результат: 68 60 22 55 25 | 85
Ищем максимум оставшихся: 68. Результат: 60 22 55 25 | 68 85
Ищем максимум оставшихся: 60. Результат: 22 55 25 | 60 68 85
Ищем максимум оставшихся: 55. Результат: 22 25 | 55 60 68 85
Ищем максимум оставшихся: 25. Результат: 22 | 25 55 60 68 85
Оценка метода:
Память: необходимая память для хранения n записей.
Количество сравнений для n ключей: n^2 / 2
Время работы метода от степени упорядоченности не зависит.
Число перестановок: n-1 (по числу этапов)