Bonjour,
j'ai besoin de votre aide sur l'implementation de l'algo de dijsktra en C.
pourriez-vous m'aidez?
voici le programme ke j'ai pû faire je swi débutante en C aidez moi s'il vous plait.
#include
#include
#include
typedef struct{
int mat[8][8];
}graphe;
graphe G;
int p,k,s;
/* -----Fonction successeur----- */
int Successeur(int i,int j){
int resu,mat[i][j];
if(mat[i][j]==1){
resu=1;
}
else{
resu=0;
}
return(resu);
}
//int predecesseur(int i, int j){
/* -----Fonction sauvegarde ----- */
int Sauvegarde(int val,int T[8]){
int i;
for(i=0;i<8;i++){
if (val==T[i]){
return 0;
}
else{
return 1;
}
}
}
/* -----Fonction explore ----- */
void Explore(graphe G,int x){
int j,val,i,mat[i][j];
int T[8];
for(i=x;i<8;i++){
for(j=0;j<8;j++){
if((mat[i][j]==1)){
printf("sommet1:%d\n",j);
Explore(G,j);
}
else{
printf("le sommet n'est pas succ\n");
}
}
}
while((Successeur(i,j))==1 && (Sauvegarde(j,T[8]))==1){
printf("Arc de x%d a x%d explore\n",i,j);
Explore(G,j);
T[val]=j;
}
}
/* ----- Fonction DFS ----- */
/* algode dijkstra*/
/*void dijkstra(graphe G){
int s=0,i,j;
while (s==
}*/
/* ----- Programme principal----- */
int main(void){
int i,j,x;
//int mat[8][8];
int matrice[8][8]={{0,2,3,4,0,0,0,0},
{0,0,0,1,4,5,0,0},
{3,0,0,0,0,0,1,0},
{0,0,2,0,1,0,0,0},
{0,0,0,0,0,0,0,2},
{0,0,0,0,0,0,3,0},
{0,0,0,2,0,0,0,2},
{0,0,0,0,0,3,0,0}};
for(i=0;i<8;i++){
for(j=0;j<8;j++){
printf("%d",matrice[i][j]);
G.mat[i][j]=matrice[i][j];
}
printf("\n");
}
//printf("Entrez un sommet compris entre 1 et 8\n");
//scanf("%d",&x);
Explore(G,x);
return EXIT_SUCCESS;
}