Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.11.2013, 02:30   #1
Pomogi
 
Регистрация: 26.12.2012
Сообщений: 8
По умолчанию Напишите пожалуйста алгоритм вывода списка ребер неориентированного графа

Простой неориентированный граф задан матрицей смежности, выведите его представление в виде списка ребер.
Вот начало
Цитата:
#include <iostream>

using namespace std;

int main()
{
int k[100][100],n,i,j;
cin>>n;
for(i=0;i<n;i++){
for(j=0;j<n;j++){
cin>>k[i][j];}}
Изображения
Тип файла: jpg фыввфыыфвфыв.jpg (16.3 Кб, 114 просмотров)
Pomogi вне форума Ответить с цитированием
Старый 03.11.2013, 12:44   #2
Poma][a
Новичок
Джуниор
 
Регистрация: 11.10.2011
Сообщений: 3,882
По умолчанию

Меня волнует один вопрос..
Вчесть чего такой порядок?
2 3 - это соседи 1-ой вершины
1 3 - 2-ой..
Poma][a вне форума Ответить с цитированием
Старый 03.11.2013, 13:50   #3
Pomogi
 
Регистрация: 26.12.2012
Сообщений: 8
По умолчанию

незнаю. но там можно в любом порядке
Pomogi вне форума Ответить с цитированием
Старый 03.11.2013, 14:12   #4
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,289
По умолчанию

Код:
for (int i = 0; i < n - 1; ++i)
  for (int j = i + 1; j < n; ++j)
    if (k[i][j])
      cout << i + 1 << " " << j + 1 << endl;
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Старый 03.11.2013, 14:42   #5
Pomogi
 
Регистрация: 26.12.2012
Сообщений: 8
По умолчанию

спасибо. а чтобы понялось если это был бы ориентированный граф?
Pomogi вне форума Ответить с цитированием
Старый 03.11.2013, 15:50   #6
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,289
По умолчанию

1) Код выше не учитывает петель в графе
2) Насчет ориентированного графа - тут нужно решить, что именно выводить
Например, все дуги, вроде :
Код:
for (int i = 0; i < n; ++i)
  for (int j = 0; j < n; ++j)
    if (i != j && k[i][j])
      cout << i + 1 << " " << j + 1 << endl;
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA на форуме Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
раскраска ребер графа blackrabbit C# (си шарп) 0 13.05.2013 11:36
Удаление ребер из списка ребер Daria7 Паскаль, Turbo Pascal, PascalABC.NET 0 18.06.2012 12:50
Алгоритм рисования графа ^ХЗ^ Помощь студентам 0 26.12.2011 19:26
Алгоритм обхода графа helena91 Паскаль, Turbo Pascal, PascalABC.NET 1 01.03.2011 15:40
показать алгоритм в виде графа. Нина93 Помощь студентам 0 26.12.2010 14:31