С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 29.04.2020
Сообщений: 1
1

Подсчет количества компонент связности в неориентированном графе

29.04.2020, 14:48. Показов 1840. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Ребят, помогите, пожалуйста!

Дан неориентированный граф. Необходимо посчитать количество компонент связности в нем.
Сначала вводим количество вершин (n), затем ребер (m). Далее идут списки ребер.

Входные данные:
6 4
4 2
1 4
6 4
3 6

Выходные данные:
2

Вот мой код:

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
#include <iostream>
#include <vector>
#include <algorithm>
 
using namespace std;
const int MAXN = 1 << 10;
int n, m, v1, v2;
vector < vector <int> > g(MAXN);
int *used = new int[MAXN];
 
void dfs(int v) {
    used[v] = 1;
    for (auto i = g[v].begin(); i!=g[v].end(); ++i)
        if (!used[*i])
            dfs(*i);
}
 
int main() {
    int count = 0;
    cin >> n >> m;
    vector < vector <int> > g(n);
    int *used = new int[n];
    for(int i = 0; i < m; ++i) {
        cin >> v1 >> v2;
        g[v1].push_back(v2);
        g[v2].push_back(v1);
    }
 
    for(int i = 0; i < n; ++i) {
        if (!used[i]) {
            count++;
            dfs(i);
        }
    }
 
    cout << count;
    return 0;
}
Я совсем плоха в графах, не могу найти ошибку (выводит 0).
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.04.2020, 14:48
Ответы с готовыми решениями:

В неориентированном графе посчитать количество компонент связности
2. Компоненты связности В неориентированном графе посчитать количество компонент связности. В...

Нужно немного переделать программу нахождения компонент сильной связности в графе
В общем задание такое, нужно переделать эту программу, я не знаю как это сделать, помогите люди...

Посчитать количество компонент связности в неориентированном графе
В неориентированном графе посчитать количество компонент связности. В графе могут быть петли и...

Существование пути в неориентированном графе
Как должен выглядеть алгоритм который проверяет существует ли путь между 2 вершинами...

0
29.04.2020, 14:48
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.04.2020, 14:48
Помогаю со студенческими работами здесь

Абсолютные медианы на неориентированном графе
Сильно связный граф G=&lt;V,E&gt;, дугам(ребрам) и вершинам которого приписаны неотрицательные целые...

Максимальный поток в неориентированном графе
Какой алгоритм следует использовать для нахождения максимального потока в неориентированном...

Количество мостов в неориентированном графе
Здравствуйте, я хотел бы посчитать количество мостов,с помощью нахождения компонент реберной...

Найти максимальную клику в неориентированном графе
Помогите пожалуйста разобраться в программе. Она ищет максимальную клику в неориентированном графе....

Найти точки сочленения в неориентированном графе
Здравствуйте можете кто нибудь помоч в написании программы.. Пусть есть связный неориентированный...

Поиск всех циклов в неориентированном графе.
На входе программа принимает номера вершин и вес ребра между ними. Например: 2 3 1 - между...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru