Guest User

Untitled

a guest
Nov 19th, 2017
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.62 KB | None | 0 0
  1. //graph adjacency corresponds to the index where it is assigned
  2.  
  3. class DFS {
  4. public:
  5. int vertices;
  6. std::vector<std::vector<int>> graph;
  7. std::vector<int> visitedFlags;
  8.  
  9. bool checkGraphConnected() {
  10. int startIndex = 0;
  11. visitedFlags = std::vector<int>(vertices, false);
  12. dfs(startIndex);
  13. return (std::find(visitedFlags.begin(), visitedFlags.end(), 0) == visitedFlags.end());
  14. }
  15.  
  16. void dfs(int i) {
  17. if (!visitedFlags[i]) {
  18. visitedFlags[i] = true;
  19. for (int j = 0; j < graph[i].size(); j++) {
  20. dfs(graph[i][j]);
  21. }
  22. }
  23. }
  24. };
Add Comment
Please, Sign In to add comment