En kısa yol algoritmaları_Floyd

26 Ocak 2009 – 15:52

#include <stdio.h>
#include <stdlib.h>

#define N 5
#define R RAND_MAX

int main()
{
int ekm[N][N];
int i,j,k,x,y,z,d;
int G[N][N] ={0,5,30,R,14},{5,0,15,5,R},{30,15,0,R,8},{R,5,R,0,3},{14,R,8,3,0}};

for (z = 0; z < N; z++)
for (d = 0; d < N; d++)
{
printf(”%d\t”,G[z][d]);
if(d==4)
printf(”\n”);
}


for( ;; ){
for (k = 0; k < N; k++)
for (i = 0; i < N; i++)
for (j = 0; j < N; j++)
if (G[j] >= (G[k] + G[k][j])){
G[j] = G[k] + G[k][j];
ekm[j]=G[j];
}

scanf(”%d%d”,&x,&y);
printf(”ekm[%d][%d]=%d\n”,x,y,ekm[y]);

}

return 0;
}

Bookmark and Share

Post a Comment

Subscribe without commenting