Форум программистов, компьютерный форум, киберфорум
Наши страницы

представить граф в виде матрицы - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Найти сумму элементов расположенных выше главной диагонали. http://www.cyberforum.ru/cpp-beginners/thread290107.html
Дан массив размерности 3х3. Найти сумму его элементов, расположенных выше главной диагонали. Вот начало (все на что я способен) #include<iostream> #include<math.h> using namespace std; void...
C++ Цикл в dev-cpp помогите пожалуйста как сделать цикл ? вот на простом примере мне надо сделать чтоб блокнот открывался постоянно с промежутком в 10 секунд #include <cstdlib> #include <iostream> using... http://www.cyberforum.ru/cpp-beginners/thread290082.html
Скорость перебор вектора C++
Вектор можно перебирать двумя способами, первый - через итератор for (it=pairs.begin();it!=pairs.end();++it){ printf("%i\n", it); } А можно без использования итераторов, через оператор ...
использования функцый C++
Я начинающий программист вроде бы уже знаю как работают циклы и т.п. Ну хорошей программы написать не могу например: (Открытия CD-RAM при нажатия клавиши, или клавиатурный шпион, удаления файла и...
C++ strncpy http://www.cyberforum.ru/cpp-beginners/thread290039.html
Дана строка: djh,dfkh,sdj. Как последовательно по отдельности записать в strncpy текстовые части: djh dfkh sdj
C++ combobox и отображение полей Добрый день , прощу помощи по visual studio , т.к. человек от программирования я далекий и не уверен даже в тот ли раздел я пишу. Собственно как мне кажется моя проблема просто элементарна и скорее... подробнее

Показать сообщение отдельно
ZloyVolkey
27 / 27 / 6
Регистрация: 01.05.2011
Сообщений: 85
06.05.2011, 22:38
Граф в виде матрицы смежности:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
int **Graf, N, M, i, j;
        printf("Введите количество вершин: ");
    scanf("%i", &N);            
        printf("Введите количество дуг: ");
    scanf("%i", &M);
    Graf = new int *[N];
    for (i = 0; i < N; i++)
        Graf[i] = new int [N];
    for (i = 0; i < N; i++)
        for (j = 0; j < N; j++)
            Graf[i][j] = 0;
 
    printf("Введите длины рёбер: (вершина_1 вершина_2 длина)\n");
    for (k = 0; k < M; k++) {       
        int  m, n, weight;
        printf("%i) ", k+1);
        scanf("%i %i %i", &m, &n, &weight);
        n--; m--;
        Graf[n][m] = weight;
        Graf[m][n] = weight;
        }
Если граф не взвешенный, то вместо веса писать единицы.
C++
1
2
3
4
5
6
7
8
for (k = 0; k < M; k++) {       
        int  m, n;
        printf("%i) ", k+1);
        scanf("%i %i %i", &m, &n);
        n--; m--;
        Graf[n][m] = 1;
        Graf[m][n] = 1;
}
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.