Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

6385

.pdf
Скачиваний:
19
Добавлен:
13.02.2021
Размер:
3.45 Mб
Скачать

Глава 12. Шаблоны

1.Создать класс, реализующий динамическую структуру хранения данных в соответствии с индивидуальным заданием (Таблица 22).

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

3.В созданном классе реализовать конструктор, деструктор, set- и get- методы. Доступ к элементам динамической структуры организовать в виде метода в соответствии с индивидуальным заданием (Таблица 23).

4.Написать метод, реализующий поиск элемента структуры по содержанию.

5.Написать методы, производящие вывод на экран, вывод в файл, чтение из файла всех элементов динамической структуры.

6.В отчете привести листинг программы, скриншоты тестирования программы, рисунок структуры класса. Листинг программы без комментариев не принимается.

Варианты индивидуальных заданий

Таблица 22 Варианты структуры

Структура хранения данных

1.Двунаправленный линейный список

2.Одномерный динамический массив переменной длины

3.Однонаправленный линейный список

4.Двунаправленный кольцевой список

5.Упорядоченное бинарное дерево

6.Однонаправленный кольцевой список

 

Таблица 23 Варианты способа доступа к элементам

 

 

 

Способ доступа к элементам структуры

 

1.Очередь, размещение элементов с хвоста

2.Стек, размещение элементов с головы

3.Упорядоченное размещение элементов по возрастанию

4.Очередь, размещение элементов с головы

5.Стек, размещение элементов с хвоста

6.Упорядоченное размещение элементов по убыванию

7.Индексация элементов, доступ по индексу

Контрольные вопросы:

1.В чем состоит особенность динамических структур данных?

2.Опишите принцип добавления (удаления) элемента в динамическую структуру.

3.Каков механизм перебора всех элементов для конечного и кольцевого списков?

4.Как осуществляется переход от одного элемента списка к другому?

5.Как создаются (удаляются) объекты классов – динамических структур?

6.Каков механизм реализации перехода от элемента к элементу двунаправленного списка?

7.Как реализуются упорядоченные динамические структуры – деревья?

8.Можно ли создать дерево с произвольным количеством ветвей?

9.В чем отличие шаблона template <class> от шаблона template <typename>?

161

Список рекомендуемой литературы

1.Бьярне Страуструп Программирование: принципы и практика использования C++,

исправленное издание. / Programming: Principles and Practice Using C++. — М.: «Вильямс», 2011. — С. 1248. — ISBN 978-5-8459-1705-8

2.Герберт Шилдт С/С++ Справочник программиста. — М.: «Вильямс», 2003. — С.

432. — ISBN 5-8459-0459-5

3.Эндрю Кёниг, Барбара Э. Му Эффективное программирование на C++. Серия книг

"C++ In-Depth"++. — М.: «Вильямс», 2002. — С. 384. ил. — ISBN 5-8459-0350-5

4.Стэнли Б. Липпман, Жози Лажойе. Язык программирования C++. Вводный курс. – Спб.: Невский Диалект, ДМК пресс, 2002. – С. 444., ил. - ISBN 5-7940-0070-8, 5- 94074-040-5

5.Богуславский А.А., Соколов С.М. Основы программирования на языке Си++: Для студентов физико-математических факультетов педагогических институтов. – Коломна: КГПИ, 2007.

6.Демидович Е.М. Основы алгоритмизации и программирования. Язык СИ : Учебное пособие. – СПб.: БХВ-Петербург, 2006.

7.Дэвис С. С++ для «чайников». – К. : Диалектика, 2005.

8.Павловская Т.А. С/С++. Программирование на языке высокого уровня. – СПб:

Питер, 2007.

9.Дональд Кнут Искусство программирования, том 3. Сортировка и поиск = The Art of Computer Programming, vol.3. Sorting and Searching. — 2-е изд. — М.: «Вильямс», 2007. — С. 824. — ISBN 0-201-89685-0

Михальченко С.Г., 2016ТУСУР, 2016

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]