查找指定顶点最短边的边信息,并将边的末节点返回
//查找字符toal开头的最端边信息
char select(char ch[][4],int &sum,char toal)
{
int min=4;
int j=0;
for(int i=0;i<35;i++)
{
if(ch[i][0]==toal)
{
min= ch[i][2]-48<min ? ch[i][2]-48:min;
j=i;
}
}
sum=sum+min;
return ch[j][1];
}
完整代码
#include <iostream>
using namespace std;
//查找字符toal开头的最端边信息
char select(char ch[][4],int &sum,char toal)
{
int min=4;
int j=0;
for(int i=0;i<35;i++)
{
if(ch[i][0]==toal)
{
min= ch[i][2]-48<min ? ch[i][2]-48:min;
j=i;
}
}
sum=sum+min;
return ch[j][1];
}
int main()
{
// 请在此输入您的代码
char ch[][4]={"AE1","AB2","AC1","AD1","BG1","BJ2","CD3","CG3","CF3","DG2","DH1","DI2","EH1","EI3","FJ1","FG1",
"GK2","GI3","HL2","HI1","IM3","JS2","KN1","KL3","KP2","LR1","LM1","MN2","MQ1","MS1","NP1","QO1","OR3","PO1","RS1"};
int sum=0;
char flag=select(ch,sum,'A');
while(flag!='S')
{
flag= select(ch,sum,flag);
}
cout<<sum;
return 0;
}
如果对你有帮助,就留下个赞吧!!!