|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
08.11.2012, 17:14 | #1 |
Пользователь
Регистрация: 13.03.2012
Сообщений: 36
|
нахождение кратчайшего пути от заданной вершины
суть программы такова:реализовать алгоритм нахождения кратчайшего пути от заданной вершины ко всем прочим
#include "stdafx.h" #include<iostream> using namespace std; const int n=9; void poisk(int A[n][n],int x,int y,int mas[n],int nomer_yarusa); int _tmain(int argc, _TCHAR* argv[]) { int A[n][n]={{0,1,0,1,0,0,0,1,0}, {1,0,1,0,0,1,0,0,0}, {0,1,0,1,1,0,1,0,0}, {1,0,1,0,0,0,1,0,0}, {0,0,1,0,0,0,0,1,1}, {0,1,0,0,0,0,0,0,0}, {0,0,1,1,0,0,0,0,0}, {1,0,0,0,1,0,0,0,0}, {0,0,0,0.1,0,0,0,0}}; int mas[n]; int b[n]; int j,k,x,y; int nomer_yarusa=0; x=5; y=6; poisk(A,x,y,mas,nomer_yarusa); k=y; if(mas[y]==0) cout<<x<<"->"<<y<<"don`t find\n"; else{ cout<<"The length of the shortest path = "<<x<<"->"<<y<<" = "<<nomer_yarusa; for(j=nomer_yarusa+1;j>1;j--){ b[j]=k; k=mas[k]; cout<<b[j]; } cout<<"shortest path"<<b[1]; for(j=2;j<nomer_yarusa+1;j++){ cout<<","<<b[j];} } system("pause"); return 0; } void poisk(int A[n][n],int x,int y,int mas[n],int nomer_yarusa){ int o[n]; int i,j,k,l,m; for(j=1;j<n;j++){ mas[j]=0;} i=k=1; o[k]=x; mas[x]=n+1; nomer_yarusa=0; do { m=k; nomer_yarusa++; do{ l=o[i]; for(j=1;j<n;j++){ if((A[l,j]!=0)&&(mas[j]==0)){ mas[j]=l; k++; o[k]=j; if(j==y) return; } } i++; }while(i>m); }while(i>k); } не считает длину пути и кратчайшую цепь!!! |
08.11.2012, 17:38 | #2 |
Пользователь
Регистрация: 13.03.2012
Сообщений: 36
|
Помогите пожалуйста не могу понять в чем проблема?
|
08.11.2012, 17:57 | #3 |
Новичок
Джуниор
Регистрация: 08.11.2012
Сообщений: 2
|
Уроки для хакеров и программистов http://itblogs.org/
|
08.11.2012, 18:00 | #4 |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
В-нулевых, тег CODE. Во-первых, Вы бы ещё переменные разным числом подчёркиваний называли для пущей понятности. Несколько эквивалентных преобразований кода (я по-прежнему не понимаю, что делает программа в целом, но, возможно, так станет что-то яснее Вам):
Код:
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Нахождение кратчайшего пути на графе. | Мария74 | Помощь студентам | 14 | 31.10.2012 21:36 |
Нахождение кратчайшего пути | Grime | Microsoft Office Excel | 6 | 06.06.2012 08:46 |
Подпрограмма нахождения самого длинного простого пути от заданной вершины (язык Си) | Dmell | Помощь студентам | 1 | 02.05.2012 10:07 |
Нахождение кратчайшего пути в графе | Nata220 | Помощь студентам | 4 | 29.11.2010 14:54 |
Алгоритм Беллмана-форда,нахождение кратчайшего пути | bakir | Помощь студентам | 1 | 13.01.2010 02:31 |