Advertisement
Zhobra

Untitled

Aug 23rd, 2022
982
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.90 KB | Source Code | 0 0
  1. #include <queue>
  2. void Graph::print_constr_tree() { // функция построения и вывода в терминал стягивающего дерева методом обхода в ширину
  3.     int* Mark = new int[k](); // нулёвый массив отметок
  4.     queue<int> q; // очередь вершин (см. обход в ширину)
  5.     q.push(0); // начальная вершина произвольна, рассмотреть вариант её передачи в качестве аргумета (поставить аргумент по умолчанию)
  6.     Mark[0] = 1;
  7.     while (!q.empty()) {
  8.         int v = q.front();
  9.         q.pop();
  10.         for (int i = 0; i < graphtable[v].size(); ++i) {
  11.             int w = graphtable[v].readPos(i);
  12.             if (Mark[w] == 0) {
  13.                 q.push(w);
  14.                 Mark[w] = 1;
  15.                 cout << "(" << v << "," << w << "), ";
  16.             }
  17.         }
  18.     }
  19.     cout << "\b\b \b";
  20.     delete[] Mark;
  21. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement