问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

n个城市(n>2),指定两个城市,求这两个城市有几条路径?

发布网友 发布时间:2022-05-29 17:54

我来回答

1个回答

热心网友 时间:2023-10-30 19:55

#include <stdio.h>

#define CityNum 5
int AA[CityNum][CityNum]=
{ 1,0,1,0,0,
0,1,0,1,0,
0,1,1,0,0,
0,0,0,1,1,
0,0,1,0,1
};

int Path[CityNum]={0},pP=0;
int aFrom,bTo,pathCount=0;
int inPath(int a)
{
int j;
for(j=0;j<pP;j++)
if(Path[j]==a) return j;
return -1;
}
int FindPath(int a,int b)
{
int i,found=0,f1=0,f2=0;

if(AA[a][b]==1)
{
printf("----%d to %d\n",a,b);
found=1;
}
else for(i=0;i<CityNum;i++)
{
if(a==i)continue;
if(b==i)continue;
if(inPath(i)>=0)continue;

Path[pP++]=i;
f1=FindPath(a,i);
f2=FindPath(i,b);
found=f1&&f2;
pP--;

if(found)
{
printf(">>>>%d to %d\n",a,b);
if((a==aFrom)&&(b==bTo))
{
pathCount++;
printf("A path:%d+1 to %d+1.\n",aFrom,bTo);
printf("\n");
}
}

}
return found;
}

void main()
{
int a,b;
a=1,b=5;
aFrom=a-1;bTo=b-1;
Path[pP++]=aFrom;
Path[pP++]=bTo;
FindPath(aFrom,bTo);
printf("I have found %d path from %d to %d.\n",pathCount,a,b);
}追问根据AA数组的定义,从1到5应该只有一条路径(1->3->2->4->5)。结果算出来的是2条。我觉得是不是判断条件有问题。

追答#include
#define CityNum 5
int AA[CityNum][CityNum]={
1,0,1,1,0,
0,1,0,1,0,
0,1,1,0,0,
0,0,0,1,1,
0,0,1,0,1
};
int Path[CityNum],pP=0;
int aFrom,bTo,pathCount=0;
int inPath(int a){
int j;
for(j=0;j<pP;j++)if(Path[j]==a)return j;
return -1;
}
void GoPath(int a){
int i;
Path[pP++]=a;
if(a==bTo)
{
pathCount++;
printf("Path:");
for(i=0;i<pP;i++)printf("%d ",Path[i]);
printf("\n");
}
else for(i=0;i<CityNum;i++)if((inPath(i)<0)&&(AA[a][i]==1))GoPath(i);
Path[--pP];
}
void main(){
aFrom=0;bTo=4;
GoPath(aFrom);
printf("I have found %d path from %d to %d.\n",pathCount,aFrom,bTo);
}

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
银耳茉莉汤制作要诀 茉莉银耳羹制作过程 银耳饮料茉莉银耳汤 发几张很好看的手机壁纸来 无纺壁纸的优缺点有哪些? 移动破碎机价格多少钱一台,移动破碎机需要办理什么手续 你知道窝瓜和倭瓜的区别是啥吗? 窝瓜和倭瓜是一种东西吗? 经常吃韭菜有什么危害 像素标定板 国家、城市、企业的减排路径主要有哪些? 撤县设市的设市路径 数据结构城市最短路径问题 从一个城市路径多个城市最短路线,最好是oc代码 可持续城市的发展路径 海绵城市的技术路径? 生态文明视角下的城市路径是什么意思 Find X2 系列机型天气添加城市路径? 智慧城市四路径 tsp四个城市几条路径 大城市调控路径隐现:一线城市密集出手后 二线城市接棒 城市规划中有时候会看到城市路径这个名词,他到底是什么意思?有没有相关的研究? win10 屏幕会抖动 怎么用气泡音来飙高音啊? 湖南长沙有哪些美术类大学 怎样才能用气泡音轻松唱出高音? 初升高长沙有什么好的美术学院吗 在长沙艺术类大学,美术特长生可以报考的有哪些? 湖南省内的美术学院有哪些呢?二本的 红糖红枣姜水晚上喝好吗 2o5国道路径城市 二水是哪里的地名,其他的不知道了 请问制作复合饼图时,我选取了数据,但是做不出所需要的布局,到底应该怎么选取数据进行调整呢? fros七y是什么意思 制氧机10大品牌请问有人知道吗? 制氧机品牌有哪些 哪里有制氧机专卖店啊 制氧机十大品牌有那些啊? 最好的制氧机有什么牌子? 制氧机10大品牌有哪些?哪个牌子好? 哪里有买制氧机啊 制氧机十大品牌有哪些? 家用制氧机哪个牌子制氧效果好?制氧机哪里有? 怎么做出这种上面有一条条斜线的图啊?有什么美图软件可以做出来吗 想这样的头像斜线怎么弄 结构陶瓷 干压成型要求氧化铝更细吗 纳米氧化铝? 高温煅烧氧化铝粉体的分类 如何开始 U8 8.7 的二次开发 用友U8二次开发中有没有给表页设置关键字的命令?