tabla de costos:
| 999,10,15,20 |
| 5,999,9,10 |
| 6,13,999,12 |
| 8 ,8,9,999|
Costo minimo 35
Trayecto 1a2, 2a4, 4a3, 3a1
El programa Calcula el costo minimo pero no se como hacer que la funcion tps muestre el trayecto o tendría que crear otra funcion que haga el trayecto la verdad no tengo idea de como hacer que el programa haga eso en eso necesito su ayuda.
El 999 es que noo existe una ruta .
Aqui el codigo:
Código C:
Ver original
#include <stdio.h> #include <stdlib.h> int tsp(int **c, int *g, int ini, int n); main (){ int t,i,j,**c,*g,cost; for(i=0;i<t;i++){ } for(i=0;i<t;i++){ for(j=0;j<t;j++){ } } for(i=0;i<t;i++) g[i]=i; cost=tsp(c,g,0,t); } int tsp(int **c, int *g, int ini, int n){ int i, j, k,*temp,*ming, mincost, ccost; if(ini==n-2) return c[g[n-2]][g[n-1]]+c[g[n-1]][0]; mincost=999; for(i=ini+1;i<n;i++){ for(j=0;j<n;j++) temp[j]=g[j]; temp[ini+1]=g[i]; temp[i]=g[ini+1]; if(c[g[ini]][g[i]]+(ccost=tsp(c,temp,ini+1,n))<mincost){ mincost=c[g[ini]][g[i]]+ccost; for(k=0;k<n;k++) ming[k]=temp[k]; } } return mincost; }
Espero puedan ayudarme