Содержание
- 2. Поиск кратчайших путей в графе
- 3. Алгоритм Дейкстры
- 4. Алгоритм Дейкстры
- 5. Алгоритм Дейкстры
- 6. Алгоритм Дейкстры
- 7. Алгоритм Дейкстры
- 8. Методы WGraph для алгоритма Дейкстры void WGraph::minpath(int s, double *D, int *P) { int i, j,
- 9. Выделение кратчайшего пути
- 10. Вычисление кратчайших расстояний от вершины s до всех остальных Матрица расстояний в общем случае несимметричная s=0
- 11. Вычисление кратчайших расстояний от вершины s до всех остальных Матрица расстояний: s=0 Кратчайшие расстояния от вершины
- 12. Алгоритм Флойда-Уоршалла
- 13. Алгоритм Флойда-Уоршалла
- 14. Алгоритм Флойда-Уоршалла
- 15. Алгоритм Флойда-Уоршалла Вычисляется матрица весов всех кратчайших путей. double** WGraph::allminpath() { int i, j, l; double
- 16. Замечания к алгоритму Флойда-Уоршалла Алгоритм Флойда-Уоршалла –пример использования динамического программирования. Условия, при которых применимо ДП: оптимизационная
- 17. Замечания к алгоритму Флойда-Уоршалла Порядок решения задачи с помощью ДП: описать структуру оптимальных решений задачи и
- 18. Эйлеровы циклы и пути Эйлеров цикл в неориентированном графе: начинается в произвольной вершине a проходит по
- 19. Идея алгоритма построения цикла/пути Вычисляются степени всех вершин. Если условия существования цикла/пути не выполняются, то выход.
- 20. Замечания по алгоритму Текущий путь и побочные циклы выгодно строить в виде списков. Используем для этого
- 21. Вставка побочного цикла в текущий
- 22. Вставка списка в список Вставка списка sec после текущего элемента (текущая позиция pcurpos не изменяется): bool
- 23. Вспомогательные методы Проверка существования эйлерова цикла/пути и расчет начальной и конечной вершины (a и b, для
- 24. Вспомогательные методы Выделение произвольного пути из a в b (a=b в случае цикла) с исключением просмотренных
- 26. Скачать презентацию