Pagini: [1]   În jos
  Imprimă  
Ajutor Subiect: Cost Uniform  (Citit de 1381 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
hunteriuly
Strain


Karma: -8
Deconectat Deconectat

Mesaje: 11



Vezi Profilul
« : Noiembrie 05, 2009, 19:59:14 »

Cod:
#include <iostream>
#include <conio.h>
using namespace std;


void main (void)
{
int a[20][20],trecut[20],Cost[20][20],n,i,j,u,pc,y, m,e1,e2,x,sol[20];
cout<<"numarul de noduri: ";
cin>>n;
cout<<"numarul de muchii: ";
cin>>m;
for (i=1;i<=n;i++)
 for (j=1;j<=n;j++)
   a[i][j]=0;
for (i=1;i<=m;i++)
 {
   cout<<"Muchia "<<i<<":\n";
   cout<<"e1=";
   cin>>e1;
   cout<<"e2=";
   cin>>e2;
   a[e1][e2]=a[e2][e1]=1;
 }

    for(i=1;i<=n;i++)
      for(j=1;j<=n;j++)
 {   cout<<"Cost["<<i<<"]["<<j<<"]=";
 cin>>Cost[i][j];}

for (i=1;i<=n;i++)
 trecut[i]=0;
cout<<"Nodul initial: ";
cin>>x;
cout<<"Nodul cautat: ";
cin>>y;
pc=1;
u=1;
sol[1]=x;
trecut[x]=1;

while (u < n && !trecut[y])
 {
   for (i=1;i<=n;i++)
     if (a[sol[pc]][i] && !trecut[i])
 {
   u++;
   sol[u]=i;
   trecut[i]=1;
 }
   pc++;
 }
cout<<"Parcurgerea BFS:";
for (i=1;i<=n;i++)
cout<<sol[i]<<',';
cout<<'\b';
getche();
}
[code/]


Am nevoie sa modific algoritmul de mai sus(care reprezinta parcurgerea in latime) astfel incat sa calculez drumul de cost uniform de la un nod initial la un nod cautat.
Deci eu introduc de la tastatura nodul de plecare si nodul la care trebuie sa ajung(ceea ce am realizat deja) si mai am nevoie de o matrice a costurilor care contine costul drumurilor (costul fiecarei muchii de la un nod la altul) (cred ca si asta am realizat corect)
Am nevoie de o continuare..astfel incat sa imi afiseze drumul parcurs si costul acestuia!

Help!
« Ultima modificare: Noiembrie 05, 2009, 20:04:56 de către Voicu Iulian » Memorat
Pagini: [1]   În sus
  Imprimă  
 
Schimbă forumul:  

Powered by SMF 1.1.19 | SMF © 2006-2013, Simple Machines