12345678910111213141516171819202122232425262728 |
- #pragma once
- #include "Graph.h"
- class BFS
- {
- typedef set<GraphNode*>::const_iterator node_iterator;
- const Graph* graph;
- public:
- BFS(const Graph* agraph) : graph(agraph) {}
- bool connected(GraphNode* begin, GraphNode* end);
- friend Graph;
- friend GraphNode;
- };
- class DFS {
- typedef set<GraphNode*>::const_iterator node_iterator;
- private:
- const Graph* graph;
- set<GraphNode*> visited;
- bool connected(GraphNode* begin, GraphNode* end, int depth);
- public:
- DFS(const Graph* agraph) : graph(agraph) {}
- bool connected(GraphNode* begin, GraphNode* end);
- friend Graph;
- friend GraphNode;
- };
|