12. Представяне на граф. Обхождане на граф

Дефиниции [5.1, стр. 247]

* Връх, възел (vertex, node), дъга, ребро (arc, edge), n върха, m ребра
* Ориентиран и неориентиран граф
, претеглен граф, компоненти на свързаност
* Примери
* Път в граф, цикъл, свързан граф
* Мултиграф (повторение на ребра)
* Предшественици и наследници, инцидентност, съседност, степен на връх
* Пълен граф, двуделен граф
, подграф
* Дърво (неориентиран свързан граф без цикли), кореново дърво, покриващо дърво

Представяне [5.2]

* Списък на ребрата [5.2.1]
памет O(m), съседни ребра O(m) или O(logm)
* Матрица на съседство (достижимост) [5.2.2]
памет O(n2), съществуване на ребро между два върха O(1), наследници на връх O(n)
* Списък на наследниците [5.2.3]
памет O(m), наследници на връх O(1), ребро между два върха O(бр.насл.) или O(log бр.насл.)
* Матрица на инцидентност връх - дъга [5.2.4]
памет O(m.n), ребро между два върха O(m)

Обхождане [5.3]

*Обхождане в ширина (DFS) [5.3.1]
*Обхождане в дълбочина (BFS) [5.3.2]
*Най-кратък път между два върха по брой на върховете [5.4.1]
*Проверка за цикличност [5.4.1]
*Намиране на всички прости пътища между два върха [5.4.1]