Графы являются очень полезной в программировании структурой, поскольку зачастую задачи компьютерной науки можно представить в виде графа и решить с помощью одной из его техник. Помимо этого, не обязательно использовать графы непосредственно, простое мышление и моделирование на их основе также может помочь более ясно поставить задачу и повысить эффективность ее решения.
Несмотря на то, что область теории графов глубока и увлекательна, данная статья включит в себя следующие общие разделы, касающиеся именно программистов:
- Мышление на основе графов/узлов и подходы к решению задач поиска.
- Реализация графа с помощью ООП.
- Различные представления графов: списки и матрицы смежности.
- Типы графов и их реализации: (не)ориентированные, (не)взвешенные графы, а также (а)циклические графы.
|