рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Часть 1. Структуры данных и алгоритмы над ними

Часть 1. Структуры данных и алгоритмы над ними - раздел Образование, Часть 1. Основы работы в MS Windows 5 класс 18 1. Понятие Об Алгоритме, Его Свойствах И Реализации, Эффективности (Повторени...

1. Понятие об алгоритме, его свойствах и реализации, эффективности (повторение). Виды эффективности. Понятие об оптимальном алгоритме. Понятие о структуре данных. Использование различных структур данных для повышения эффективности алгоритмов. Основные виды структур данных и их особенности.

2. Примеры использования различных алгоритмов и структур данных на примере задачи о поиске в словаре. Идея алгоритмов линейного поиска, бинарного поиска, поиска в хеш-таблице и дереве. Эффективность алгоритмов поиска. Компромисс между эффективностью по времени и эффективностью по памяти. Сравнительная эффективность алгоритмов.

3. Понятие об абстрактной структуре данных и контейнерном объекте. Классификация методов контейнерного объекта. Методы, общие для всех объектов вообще. Назначение и классификация. Методы, общие для всех контейнерных объектов. Понятие о методах, специфичных для каждого данного контейнерного объекта. Понятие обобщенных методов.

4. Хранение данных в контейнерных объектах. Реализация «хранилища» и доступа к нему. Доступ к данным по индексам. Исключительные ситуации, связанные с использованием структур данных и их обработка. Использование нулевого индекса как индикатора исключительной ситуации. Примеры использования индексного доступа и исключительных ситуаций.

5. Понятие согласованности данных в объекте. Ошибки, связанные с нарушением согласованности. Методы проверки согласованности. Контрольная распечатка объекта. Итераторы контейнерных объектов. Виды итераторов и их использование в программе.

6. Объектно-ориентированный подход в программировании. Понятие объекта, его данных и методов. Использование объектов для выражения понятий. Объект как тип языка программирования. Описание объекта, создание его экземпляров и работа с ними. Общность и индивидуальность экземпляров объекта.

7. Понятие метода объекта. Описание, определение и использование методов. Контекст использования метода объекта. Особенности работы с переменной, являющейся экземпляром объекта. Доступ к данным объекта и вызов методов. Стратегия работы с данными объекта. Ошибки, связанные с применением объектно-ориентированного подхода в программировании.

8. Объект «Стек». Основные характеристики как абстрактной структуры данных и набор методов объекта. Классификация методов. Реализация методов объекта «Стек». Особенности реализации специфичных методов. Сравнительная характеристика эффективности различных способов реализации методов добавления и удаления элементов стека.

9. Примеры использования стека в различных задачах. Программа стекового калькулятора. Ошибки, связанные с реализацией стека и его использованием. Примеры возникновения и устранения.

10. Практическая работа «Объект Стек». Программа стекового калькулятора.

11. Объект «Очередь». Виды очередей. Очередь как обобщение стека. Основные характеристики как абстрактной структуры данных и набор методов объекта. Классификация методов. Реализация методов объекта «Очередь». Особенности реализации специфичных методов. Сравнительная характеристика эффективности различных способов реализации методов добавления и удаления элементов очереди.

12. Реализация очереди при помощи кольцевого буфера. Итераторы очередей. Понятие нормализации индекса. Примеры использования итераторов очередей. Примеры использования очереди в различных задачах. Возможности очереди с двумя концами. Понятие о приоритете. Ошибки, связанные с реализацией очереди и его использованием. Примеры возникновения и устранения.

13. Практическая работа «Объект Очередь». Программа «Телеграф Морзе».

14. Объект «Список». Виды списков. Основные характеристики как абстрактной структуры данных и набор методов объекта. Классификация методов. Односвязный список. Схема реализации и эффективность методов вставки и удаления. Двусвязный список. Схема реализации и эффективность методов вставки и удаления.

15. Реализация методов объекта «Список». Особенности реализации специфичных методов. Понятие о списке свободных элементов и методы его реализации. Эффективность использования списка свободных элементов Примеры использования списков в различных задачах. Сравнение эффективности алгоритмов с использованием списков и без их использования.

16. Практическая работа «Объект Двунаправленный список». Программа «Списковый процессор».

17. Обобщающий урок по линейным структурам данных. Стратегия реализации контейнерных объектов. Сравнение наборов методов различных контейнерных объектов. Реализация обобщенных методов добавления и удаления элементов.

18. Нелинейные структуры данных. Особенности строения и реализации. Реализация нелинейных структур данных через линейные.

19. Хеш-таблица, ее свойства. Хеш-таблица как контейнерный объект. Идея хеш-поиска. Эффективность хеш-поиска. Хеш-функции и их характеристики. Требования, предъявляемые к хеш-функциям. Распределение значений хеш-функций. Стохастический характер работы хеш-таблицы.

20. Реализация хеш-поиска. Реализация хеш-таблицы при помощи массива списков. Набор методов объекта «хеш-таблица». Классификация методов. Особенности реализации специфических методов. Практическая работа «Объект Хеш-таблица».

21. Использование хеш-таблиц для представления множеств. Словари и таблицы имен как примеры множеств. Реализация программы русско-английского и англо-русского словаря с помощью хеш-таблицы. Множественность хеш-таблиц для словарей. Таблицы имен идентификаторов. Пример использования таблицы имен в программе калькулятора.

22. Практические работы «Англо-русский и русско-английский словарь» и «Стековый калькулятор с таблицей имен».

23. Понятие дерева. Дерево как вид общего графа. Элементы графов, виды графов, понятия пути, достижимости, связности, корня, цикла. Дерево как связный ациклический граф. Понятия узла, арности узла и дерева. Понятие уровня узла и дерева.

24. Хранение данных и поиск на деревьях. Применение деревьев для задачи поиска в словаре. Особенности словарного дерева. Вырожденные случаи деревьев, сбалансированные и несбалансированные деревья. Время поиска с использованием деревьев. Вставка и удаление элементов дерева.

25. Бинарные деревья. Особенности бинарных деревьев. Поиск на бинарном дереве. Построение бинарных деревьев. Перечисление элементов дерева. Прохождение деревьев и его виды. Рекурсивный характер алгоритмов прохождения деревьев. Вставка и удаление элементов бинарного дерева. Перегруппировка поддеревьев при вставке и удалении элементов.

26. Балансировка деревьев. Необходимость балансировки для поддержания оптимальности поиска. Алгоритм балансировки бинарного дерева. Особенности алгоритма балансировки. Деревья с быстрой балансировкой (2-3, AVL- и B-деревья).

27. Практическая работа «Объект двоичное дерево».

28. Использование двоичных деревьев для кодирования информации. Код Хаффмана. Понятие об избыточности информации и ее сжатии. Характеристики сжатой информации и алгоритма сжатия. Схема работы архиватора. Алгоритм работы архиватора, работающего при помощи метода Хаффмана. Статический и динамический варианты метода.

29. Пирамиды. Пирамиды как бинарные полностью сбалансированные деревья. Работа с пирамидой. Сортировка при помощи пирамиды. Другие методы сортировки. Расчет эффективности методов сортировки. Практическая работа «Объект Пирамида».

30. «Классические» алгоритмы сортировки и их особенности. Сравнение с методами сортировки на деревьях. Практическая работа «Сравнение и анализ различных видов сортировки».

31. Общие графы. Представление графов. Понятие конечного автомата (КА). Детерминированные и недетерминированные КА. Преобразование недетерминированного КА в детерминированный. КА и регулярные выражения. Задача об удалении комментариев. Лексический анализ, КА для основных типов лексем. Практическая работа «Лексический анализатор».

32. Классические алгоритмы на графах (обзор задач и основных алгоритмов).

– Конец работы –

Эта тема принадлежит разделу:

Часть 1. Основы работы в MS Windows 5 класс 18

И Р Дединский lt idedinsky mail ru gt... Содержание... Пояснительная записка...

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Часть 1. Структуры данных и алгоритмы над ними

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Пояснительная записка
Предлагаемая программа предназначена для 5–11 классов физико-математической гимназии. В соответствии с концепцией об универсальности обучения, ее построение проводится по принципам, несколько отлич

Цель и задачи курса. Принципы технологии преподавания
Цель предлагаемого курса информатики: Формирование универсального стиля научного и практического мышления, основанного на системном подходе, направленного на самостоятельн

Построение курса. Требования к знаниям и умениям учащихся
Курс информатики строится из трех основных ступеней: технологического курса (I ступень), основного курса (II ступень) и углубленного изучения (III ступень) с учетом профилизации в старших классах (

Пояснительная записка
Курс охватывает 5–7 классы и включает изучение компьютерных технологий на неформальном уровне, однако достаточном для того, чтобы прошедший курс ученик смог самостоятельно использовать компьютер дл

Тематическое планирование
Часть 1. Основы работы в MS Windows (5 класс) № Тема / ученик должен знать / ученик должен уметь (тривиально) Ученик должен уметь

Список рекомендованной учебной и методической литературы
Учебная литература (для учеников) 1. А. Г. Кушниренко, Г. В. Лебедев, Р. А. Сворень. Основы информатики и вычисли­тельной техники. Пробный учебник для средних учебных заве

Пояснительная записка
Курс рассчитан на учащихся 8 классов (вновь набранные классы) и основывается на той их особенности, что предгимназическая подготовка учащихся крайне разнородна, при этом часть учащихся не изучали и

Тематическое планирование курса
Часть 1. «Тупой Художник» № Тема / ученик должен знать / ученик должен уметь (тривиально) Ученик должен уметь (нетривиально)

Часть 2. Компьютер и математика
№ Тема / ученик должен знать / ученик должен уметь (тривиально) Ученик должен уметь (нетривиально) Повторяющиеся дейст

Часть 3. Компьютер и физика
№ Тема / ученик должен знать / ученик должен уметь (тривиально) Ученик должен уметь (нетривиально) Проект «Арканоид 1»

Список рекомендованной учебной и методической литературы
Учебная литература (для учеников) 1. Алгоритмика, 5-7 классы. Под ред. А.Л. Семенова. Дрофа, 1998. 2. Брудно А.Л., Каплан Л.И. Московские олимпиады по программиро

Вопросы к экзамену
1. Общая схема рассмотрения алгоритмической задачи. Примеры применения схемы рассмотрения задач. 2. Понятие об исполнителях. Свойства исполнителя. Понятие о системе команд. Ошибки при рабо

Задачи к экзамену
Вставки/удаления 1. Дана текстовая строка. Каждую гласную, находящуюся в ней, размножить в 3 раза. 2. Дана текстовая строка, возможно, содержащая ошибки вида «жы» и «шы». Заменить

Пояснительная записка
Курс рассчитан на учащихся 9 классов, выбравших физико-математический профиль и основывается на курсе «Алгоритмика» 8 класса. Цель курса — развить и закрепить навыки структурного программирования,

Тематическое планирование
1. Повторение основных принципов структурного программирования. Структура программы в Си. Переменные и их типы. Организация потока управления (повторение). Проект «Арканоид» (постановка и разбор за

Список рекомендованной учебной и методической литературы
Учебная литература (для учеников) 1. Березин Б.И., Березин С.Б. Начальный курс С и С++. М., ДИАЛОГ-МИФИ, 1999. 2. Брудно А.Л., Каплан Л.И. Московские олимпиады по

Пояснительная записка
Курс рассчитан на учащихся 9 классов физико-математического профиля и основывается курсах «Алгоритмика» и «Технология ООП» 8 и 9 класса. Цель курса — развитие алгоритмической культуры учеников, пол

Часть 1. Элементарные вычислительные методы
1. Технология программирования. Разбор этапов создания программы Идеология алгоритмизации и программирования (повторение). Математические методы решения задач. Понятие о вычислительных методах. Сра

Часть 2. Нечисленные и получисленные алгоритмы
1. Элементы дискретной математики. Множества и их свойства. Множества и последовательности. Алгоритмы генерации множеств. Разложение числа на слагаемые и на множители. Множество простых чисел. Реал

Список рекомендованной учебной и методической литературы
Учебная литература (для учеников) 1. Брудно А.Л., Каплан Л.И. Московские олимпиады по программированию. М., Наука, 1990. 2. Новиков Ф.А. Дискретная математика для

Пояснительная записка
Курс рассчитан на учащихся 10 классов физико-математического профиля и основывается курсах «Алгоритмика», «Технология ООП», «Алгоритмы и структуры данных I» 8 и 9 классов. Данный курс явля

Часть 2. Функциональное и логическое программирование
1. Концепция функционального программирования. Язык Лисп. Основные конструкции языка. Префиксная нотация. Операции со списками. 2. Определение функции в Лиспе. Аргументы функции. Вычислени

Часть 3. Элементы машинной трансляции
9. Структурные различия языков высокого и низкого уровней. Задача синтаксического разбора. Понятие языка и грамматики. Контекстно-свободные (КС) и контекстно-зависимые грамматики. Общий алгоритм ра

Список рекомендованной учебной и методической литературы
Учебная литература (для учеников) 1. Брудно А.Л., Каплан Л.И. Московские олимпиады по программированию. М., Наука, 1990. 2. Керниган Б., Ритчи Д. Язык программиро

Словообразование
1. [Комбинаторные слова.] Дано множество A+ (массив неповторяющихся) букв и длина слова (от…до). Получите все возможные слова как последовательности букв заданной длины.

Эмуляторы одноадресных процессоров
1. [Одноадресный интерпретатор.] Реализуйте эмулятор процессора с системой команд: PUSH <число> (затолкнуть в стек), ADD, SUB, MUL, DIV (сложить, вычесть, умножить, разделить 2 последн

Эмуляторы регистровых процессоров
13. [Регистровый интерпретатор.] Реализуйте эмулятор процессора с N регистрами (N от 4 до 8, но можно и принципиально большое число) и системой команд пересылки данных MOV <регистр> &l

Эмуляторы всяческих процессоров
20. [Двадцать лет спустя.] ...был такой программируемый микрокалькулятор Б3-34. Реализуйте его эмулятор. Кстати есть литература с библиотеками полезных программ для него. (Набор команд не оч

Пояснительная записка
Курс рассчитан на учащихся 10 классов физико-математического профиля и основывается на курсе «Технология ООП», изучаемым в 9 классе. Курс посвящен событийному программированию для ОС Windo

Тематическое планирование
1. Программирование Win32 API. Событийное программирование. Окно и функция. Обработка сообщений. Примеры. 2. Win32 API. Пользовательский интерфейс. Окна. 3. Регистрация класса окн

Список рекомендованной учебной и методической литературы
Учебная литература (для учеников) 1. Баженова И.Ю. Visual C++ 6.0 (Visual Studio 98). Уроки программирования. М., “ДИАЛОГ-МИФИ”, 1999. 2. Фролов А.В., Фролов Г.В.

Пояснительная записка
Курс рассчитан на учащихся 9 классов физико-математического профиля и основывается на курсе «Алгоритмика» 8 класса. Основная цель курса — изучение и отработка технологии проектной работы, организац

Тематическое планирование
1. Задачи курса. Понятие проекта. Виды программных проектов, их назначение. Участники процесса проектирования. Критерии оценки проекта. Этапы работы над проектом. Анализ проекта «Арканоид» из курса

Список рекомендованной учебной и методической литературы
Учебная литература (для учеников) 1. Зенкин А.А. Когнитивная компьютерная графика. М.: Наука, 1991. 2. Першиков В.И., Савинков В.М. Толковый словарь по информатик

Пояснительная записка
Курс рассчитан на учащихся 9 классов физико-математического профиля и основывается на курсах «Алгоритмика» и «Технология ООП» 8 и 9 класса. Цель курса — изучение технологии оптимизации программ с и

Тематическое планирование
1. Первоначальные сведения об ассемблере. Понятие о языках высокого и низкого уровней. Особенности языков низкого уровня. Область применения ассемблера. Использование ресурсов компьютера с максимал

Список рекомендованной учебной и методической литературы
Учебная литература (для учеников) 1. Абель П. Язык ассемблера для IBM PC и программирования. Пер. с англ. М., Высшая школа, 1992. 2. Джордейн Р. Справочник програ

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги