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

График за лекции

Теми Дата
1. Класове
-- Обектно-ориентираното проектиране:
 - обособяване на класовете;
 - определяне на интерфейс;
 - реализиране на интерфейс;
 - комбиниране на класовете в програма.
20.02
2. Вектори
-- Използване на вектори за съхраняване на данни 
-- Индекси на вектори 
-- Векторите като параметри и стойности на функции 
-- Прости алгоритми за вектори: намиране на стойност, броене и др. 
-- Успоредни вектори 
-- Векторите като данни на обект 
27.02
3. Масиви
-- Дефиниране и използване на масиви 
-- Масивите като параметри 
-- Масиви от символи 
-- Двумерни масиви 
6.03
4. Потоци
-- Четене и запис в текстови файлове 
-- Текстови потоци 
-- Аргументи от командния ред 
-- Произволен достъп 
13.03
* Първи тест

5. Модули
-- Разделно компилиране 
-- Създаване на заглавни файлове 
-- Разделяне на програмата на няколко първични файла 
-- Поделяне на променливи между модули 
-- Проекти 

20.03
6. Прости алгоритми за сортиране
-- Сортиране чрез селекция 
-- Измерване на времето за работа и анализ на ефективността на алгоритъма за сортиране чрез селекция 
-- Сортиране чрез сливане 
-- Анализ на алгоритъма за сортиране чрез сливане 
27.03
7. Търсене, бързо сортиране
-- Търсене в несортирани и сортирани данни 
-- Двоично търсене 
-- Търсене и сортиране на реални данни 
-- Бързо сортиране 
3.04
8. Още за рекурсията
-- Непряка рекурсия 
-- Ефективност на рекурсията 
10.04
9. Въведение в структурите от данни
-- Свързани списъци
-- Указатели и динамична памет 
17.04
10. Реализация на свързани списъци
-- Реализация на свързани списъци - класове, итератори, операции 
 - класове за списъците;
 - реализация на итераторите;
 - реализация на вмъкване и отстраняване.
24.04
11. Нова реализация на свързани списъци
-- Предефиниране на оператори 
-- Шаблони 
8.05
* Втори тест

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

15.05
13. Полиморфизъм
-- Полиморфизъм 
-- Виртуални функции 
-- Връзки между класове 
-
14. Други реализации на линейни структури от данни
-- Едносвързан списък 
-- Опашка
-- Топологично сортиране 
22.05
15. Дървета
-- Двоични дървета
-- Търсещи дървета
-- Кодиране на Хъфман 
29.05
    Общо: 45