Форум программистов, компьютерный форум CyberForum.ru

[C++] Компоненты связанности :( - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Определение объекта, который вызвает конструктор. http://www.cyberforum.ru/cpp-beginners/thread257883.html
Привет! Подскажите пожалуйста, как определить, какой из объектов в программе (программа очень большая и писал ее не я) вызывает конструктор класса!? Класс имеет 2 конструктора. Один на объект с параметрами, второй на объект без параметров. Найдено было 2 объекта - оба с параметрами. Но один раз, вызывается конструктор без параметра, из чего следует, что где-то есть объект без параметра....
C++ Бинарное дерево Подскажите алгоритм, что бы можно было ввести Фамилию... Не по правелу меньший влево, большый вправо, а по порядку... следования символов Фамилии... http://www.cyberforum.ru/cpp-beginners/thread257873.html
Целочисленая арифметика C++
Вот мне дали задание но я не могу понять что от меня требуется. Обьясните как оно делается.
Целочисленная арифметика C++
Вот мне дали задание но я не могу понять что от меня требуется. бьясните как оно делается.
C++ Как полностью почистить память в проге C++? http://www.cyberforum.ru/cpp-beginners/thread257862.html
Интересует следующее: как после выполнения проги почистить используемую ею память? Пробовал удалять массивы - результат нулевой. Происходит накопление и при последующем вводе тех же данных, что и в первый раз, получаем абсолютно другой результат. //--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include "math.h" #include...
C++ Указатели на Vector Создал процедуру в которой из файла данные считываются в вектор и обрабатываются некоторым образом. void get_data(fstream* in, vector <char>* init_data) Вопрос: Как обратиться к конкретному элементу вектора в этой процедуре? подробнее

Показать сообщение отдельно
Mayonez
 Аватар для Mayonez
379 / 271 / 20
Регистрация: 26.12.2009
Сообщений: 875
15.03.2011, 19:41     [C++] Компоненты связанности :(
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
#include <iostream>
#include <vector>
 
using namespace std;
//нужно где-то еще заполнить это
vector < vector<int> > g, gr;
//g- сам граф а gr - транспонированый
vector<char> used;
vector<int> order, component;
 
void dfs1 (int v) {
    used[v] = true;
    for (size_t i=0; i<g[v].size(); ++i)
        if (!used[ g[v][i] ])
            dfs1 (g[v][i]);
    order.push_back (v);
}
 
void dfs2 (int v) {
    used[v] = true;
    component.push_back (v);
    for (size_t i=0; i<gr[v].size(); ++i)
        if (!used[ gr[v][i] ])
            dfs2 (gr[v][i]);
}
 
void print()
{
   for (int i = 0; i < component.size(); i++)
      cout << component[i] << " ";
   cout << endl;
}
 
int main() {
   locale::global(locale(""));
    int n;
    cin >> n;
    for (int i = 0; i < n; i++) {
        int a, b;
        cout << "Введите следующее ребро, тоесть две вершины по очереди: ";
        cin >> a >> b;
        g[a].push_back (b);
        gr[b].push_back (a);
    }
 
    used.assign (n, false);
    for (int i=0; i<n; ++i)
        if (!used[i])
            dfs1 (i);
    used.assign (n, false);
    for (int i=0; i<n; ++i) {
        int v = order[n-1-i];
        if (!used[v]) {
            dfs2 (v);
            print();
            component.clear();
        }
    }
 
    return 0;
}
Нужно только заполнить сам граф и его транспонированый
 
Текущее время: 21:10. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru