• 大小: 2KB
    文件类型: .cpp
    金币: 1
    下载: 0 次
    发布日期: 2021-06-01
  • 语言: C/C++
  • 标签: c语言  贪心算法  

资源简介

该程序用C语言编写(在VC++环境下运行即可),使用贪心算法求得最短哈密顿回路的近似解,简单易懂。

资源截图

代码片段和文件信息

#include “stdio.h“
//#include “string.h“

int G[8][8]={{02819}
     {205109}
     {85053}
     {110505}
     {99350}};   
struct Edge   //记录边的信息
{
int x;    
int y;
int value;   //边的权值
};

typedef struct Edge Weight;
int T[5]={0};   //用于标识节点是否被遍历过
int P[6]={0};   //存放路径
int sum_value=0;    //计算总路径长度
     
Weight min_value(int r)    //找出当前节点具有最小权值的相邻边
{
   int ij=0min;
   Weight W[5];      //用于存放相邻边的信息
   for(i=0;i<5;i++)
   {
   if((T[i]==0)&&(i!=r))    //当节点未被遍历且不是自己到自己
   {
 W[j].x=r;
 W[j].y=i;
 W[j].value=G[r][i];    //记录相邻边的信息
     j++;
   }
   }
   min=W[0].value;
   for(i=0;i   {
   if(W[i+1].value    {
   W[0].x=W[i+1].x;
   W[0].y=W[i+1].

评论

共有 条评论