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

Обход неориентированного графа в ширину. В конце выдаёт путь: 1 - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Написать программу для измерения скорости вывода данных в видеопамять в графическом режиме http://www.cyberforum.ru/cpp-beginners/thread909101.html
Задача: "Написать программу для измерения скорости вывода данных в видеопамять в графическом режиме". Очень нужна срочная помощь. Добавлено через 2 часа 38 минут Вбил саму графику #include <conio.h> #include <dos.h> #include <stdio.h> #include <time.h>
C++ удаление элемента из ДЕКА (из середины) Подскажите уже, ну хоть кто-нибудь, как удалить элемент из середины дека(любой элемент, но из середины) как с вершинами работать я знаю(удаление, добавление), но как удалить другой элемент из дека не понимаю. Вообще исходный код был таким, но потом преподаватель дал доп. задание: удалить из середины элемент, точнее написать такую функцию, которая удаляет его. Я пытаюсь, но ничего не выходит.... http://www.cyberforum.ru/cpp-beginners/thread909092.html
C++ Тест по ООП
Помогите, пожалуйста, с текстом по С++!!! Тема 13. Создание объектов класса 13.1 Пусть описан класс class ClassA {int a; public: ClassA(); ClassA(int ); }; Какое из следующих выражений противоречит синтаксису С++ a) ClassA В; b) ClassA B=ClassA(2); c) ClassA B(2); d) ClassA В();
Создание простой игры, каким образом распределить "обязанности" C++
В общем идея такая, на данный момент есть более-менее работающий прототип (звёздочками в консоли) "битвы алгоритмов": поочерёдно вызываются программы-игроки, делающие ход на игровом поле и.т.д. На данный момент я вижу идею так: физический движок (из-за неграмотности в подобных делах, простите за грубые названия) осуществляет, собственно говоря, весь этот процесс вызова игроков, просчитывания и...
C++ Разборка кода http://www.cyberforum.ru/cpp-beginners/thread909076.html
Ребят, помогите описать код, что какая функция делает #include <stdio.h> #include <conio.h> #include <stdlib.h> typedef struct A { struct A *next; char surname, name, thirdname, sex; int age; } element;
C++ Попадание точки в заданную область Дана точка на плоскости с координатами (x,y).Составить программу, которая выдает одно из сообщений <<Да>>,<<Нет>>,<<На границе>> в зависимости от того , лежит ли точка внутри заштрихованной области , вне заштрихованной области или на ее границе. Области задаются графически следующим образом: @Naril, обращаю ваше внимание на правила форума: заголовок должен отражать суть задания подробнее

Показать сообщение отдельно
MrGluck
Ворчун
Эксперт С++
 Аватар для MrGluck
4919 / 2662 / 243
Регистрация: 29.11.2010
Сообщений: 7,399
22.06.2013, 02:21     Обход неориентированного графа в ширину. В конце выдаёт путь: 1
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
#include <fstream>
#include <queue>
#define N 10
using namespace std;
 
int main()
{
    ofstream o("result.txt");
    ifstream in("A.txt");
    if (!in) return 1;
    // ------------------------------инициализация------------------------------
    queue <int> q; // очередь для хранения номеров вершин
    bool visited[N]; //false - вершина не рассмотрена, true - рассмотрена
    bool inqueue[N]; //false - вершина не в очереди, true - в очереди
    bool A[N][N]; // матрица смежности
    int start = 0; // номер стартовой вершины
    int cur; // номер посещаемой вершины
    for (int i = 0; i < N; i++)
    {
        visited[i] = inqueue[i] = false;        
        for (int j = 0; j < N; j++)
            in>> A[i][j];
    }
    q.push (start); // записываем начальную вершину в очередь
    visited[start] = inqueue[start] = true;
    // --------------------------------общий шаг--------------------------------
    while (!q.empty())
    {
          cur = q.front();
          o<< cur<< " ";
          visited[cur] = true;
          q.pop();
          for (int i = 0; i < N; i++)
          {
              if (!inqueue[i] && A[cur][i])
              {
                  q.push (i);
                  inqueue[i] = true;
              }
          }
    }
    in.close();  o.close();
    return 0;
}
Добавлено через 40 секунд
N - размер матрицы смежности. Делал на втором курсе еще.
 
Текущее время: 21:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru