Програмиране и структури от данни

Учебна програма, график за лекции, учебни материали

Теми Дата Слайдове
на Хорстман
1(11). Класове
-- Обектно-ориентираното проектиране: 
 - обособяване на класовете; 
 - определяне на интерфейс; 
 - реализиране на интерфейс; 
 - комбиниране на класовете в програма.
*** [ І курсова задача ] ***
19.02 ch06.html
ch13.html
2(13). Масиви
-- Дефиниране и използване на масиви 
-- Масивите като параметри 
-- Масиви от символи 
-- Двумерни масиви 
26.02 ch09.html
3(14). Потоци
-- Четене и запис в текстови файлове 
-- Текстови потоци 
-- Аргументи от командния ред 
-- Произволен достъп 
4.03 ch06.html
* Първи тест

4(15). Модули
-- Разделно компилиране 
-- Създаване на заглавни файлове 
-- Разделяне на програмата на няколко първични файла 
-- Поделяне на променливи между модули 
-- Проекти
*** [ IІ курсова задача ] ***

11.03
(18.03)
ch06.html
5(16). Прости алгоритми за сортиране
-- Сортиране чрез селекция 
-- Измерване на времето за работа и анализ на ефективността на алгоритъма за сортиране чрез селекция 
-- Сортиране чрез сливане 
-- Анализ на алгоритъма за сортиране чрез сливане 
18.03
(25.03)
(1.04)
ch15.html
6(17). Търсене, бързо сортиране
-- Търсене в несортирани и сортирани данни 
-- Двоично търсене 
-- Търсене и сортиране на реални данни 
-- Бързо сортиране 
25.03
(1.04)
ch15.html
7(18). Още за рекурсията
-- Непряка рекурсия 
-- Ефективност на рекурсията 
1.04
(8.04)
ch14.html
8(19). Въведение в структурите от данни
-- Свързани списъци 
-- Указатели и динамична памет 
8.04 ch10.html
9(20). Реализация на свързани списъци
 - Реализация на свързани списъци - класове, итератори, операции 
 - класове за списъците; 
 - реализация на итераторите; 
 - реализация на вмъкване и отстраняване.
15.04 ch16.html
10(21). Нова реализация на свързани списъци
-- Предефиниране на оператори 
-- Шаблони 
22.04 ch16.html
ch17.html
* Втори тест

11(22). Наследяване
-- Производни класове 
-- Конструктор на базов клас 
-- Викане на член-функция на базов клас

29.04 ch11.html
12(23). Полиморфизъм
-- Полиморфизъм 
-- Виртуални функции 
-- Връзки между класове 
13.05 ch11.html
13(24). Други реализации на линейни структури от данни
-- Едносвързан списък 
-- Опашка 
-- Топологично сортиране 
*** [ ІII курсова задача ] ***
20.05  -
14(25). Дървета
-- Двоични дървета 
-- Търсещи дървета 
-- Кодиране на Хъфман 
27.05  -
ИЗПИТ
Трети тест

Забележка. Слайдове на Хорстман са направени по ново, преработена издание на книгата:
Kay HorstmannComputing Concepts with C++ Essentials, Third Edition, Wiley, 2003
и затова не съотватстват напълно на изучаваните теми.