За въпроси: 02 468 29 53, 02 971 83 90
Учебник
"СТРУКТУРИ ОТ ДАННИ И АЛГОРИТМИ В С#" - част 1.
Автори: Иван Иванов, Петър Стойков.
Издателство: Про Лангс
София, 2015
код: 199-134-2
"В тази книга са разгледани структурите от данни, които предоставят библиотеките на .NET Framework, за прилагане на различни по сложност алгоритми при програмирането със C#.
Разгледани са колекциите, като структури от данни, показан е подходът за генерично програмиране, създаден е специален клас за анализиране на реалното времетраене за изпълнение на даден алгоритъм. За да се демонстрира как са използвани разгледаните класове, са разработени редица програми, чрез които са визуализирани резултатите от тяхното използване. По-подробно е обърнато внимание на следните класове: Array, ArrayList, Stack, Queue, LinkedList и LinkedListNode. За използването на двоични дървета за търсене са създадени класовете TreeNode и BinarySearchTree, които са включени в една почти изчерпателна програма, демонстрираща повечето от методите за работа с двоичното дърво.
Приведени са много фрагменти от програмен код и цели програми, които непосредствено могат да бъдат използвани в сложни приложения.
Книгата е предназначена за студенти, изучаващи дисциплините „Структури от данни и алгоритми“ и „Структури от данни“ във Факултета „Информационни науки“ – УниБИТ.
Материалът от книгата влиза изцяло в семестриалните изпити на специалностите Информационни технологии, Информационни технологии в съдебната администрация, Информационно брокерство, Информационна сигурност и Компютърни науки на Факултет „Информационни науки“ – УниБИТ.
Може да се използва от докторанти и всички желаещи да се запознаят по-подробно със структурите от данни и създаването на алгоритми с тяхна помощ в средата на C#. За усвояването на материалa са необходими познания по обектно-ориентирано и визуално програмиране със C#."
ГЛАВА 1. ВЪВЕДЕНИЕ В КЛАСОВЕТЕ COLLECTION И GENERIC
1.1. Колекции
Описание на колекции
Директен достъп към колекциите
Колекции с последователен достъп
Йерархични колекции
Колекции групи
1.2. Класът CollectionBase
Създаване на колекции с помощта на класа List
Дефиниране на колекция
Реализиране на колекция
1.3. Генерично програмиране
1.4. Определяне на времето за изпълнение на програмите
Тестове за време в средата на .NET
Подобряване на изследвания програмен код
Създаване на класа AlgorithmTimer
ГЛАВА 2. КЛАСОВЕТЕ ARRAY И ARRAYLIST
2.1. Основи на масивите
Деклариране и инициализиране на масиви
Настройка и достъп до елементите на масива
2.2. Методи и свойства на класа Array
2.3. Многомерни масиви
2.4. Масивът като параметър на функция
2.5. Назъбени масиви или масиви от масиви
2.6. Класът ArrayList
Членовете на класа ArrayList
Използване на класа ArrayList
Обобщение
ГЛАВА 3. СТЕКОВЕ И ОПАШКИ
3.1. Класът Stack
Операции със стек
Реализиране на стек чрез класа ArrayList
3.2. Методи на конструктора Stack
3.3. Основни операции със Stack
Методите Push и Pop
Методът Peek
Методът Contains
Методите CopyTo и ToArray
3.4. Пример с класа Stack за преобразуване на десетични числа в други позиционни бройни системи
3.5. Класът Queue
Операции с опашки
Създаване на опашка с помощта на ArrayList
Един пример с използване на класа Queue
Сортиране на данни с използване на опашки
Опашки с приоритети
Обобщение
ГЛАВА 4. СВЪРЗАНИ СПИСЪЦИ
Проблемът с масивите
4.1. Понятие за свързан списък
4.2. Създаване на обектно ориентиран свързан списък
Класът Node
Класът LinkedList
4.3. Няколко модификации на свързания списък
Двусвързан списък
Цикличен списък
4.4. Класовете LinkedList и LinkedListNode
Обобщение
ГЛАВА 5. ДВОИЧНИ ДЪРВЕТА И ДЪРВЕТА ЗА ДВОИЧНО ТЪРСЕНЕ
5.1. Определение за дърво
5.2. Двоични дървета
5.3. Създаване на двоично дърво за търсене
5.4. Търсене на елементи в двоичното дърво
5.5. Изтриване на възли от дървото
5.6. Програма с реализация на двоично дърво за търсене
Обобщение
ЗАКЛЮЧЕНИЕ
ЛИТЕРАТУРА