| 查看: 1351 | 回复: 1 | ||
vivianchao新虫 (小有名气)
|
[求助]
lingo求解最短路,编程语句求答疑
|
|
Dijkstra算法。具体代码如下: model: sets: city/1..6/:L; road(city,city):d; endsets data: d=10000; enddata calc: d(1,2)=50;d(1,4)=40;d(1,5)=25;d(1,6)=10; d(2,3)=15;d(2,4)=20;d(2,6)=25; d(3,4)=10;d(3,5)=20; d(4,5)=10;d(4,6)=25; d(5,6)=55; @for(city(j)|j#lt#@size(city):@for(city(i)|i#gt#j:d(i,j)=d(j,i))); endcalc L(1)=0; @for(city(j)|j#gt#1:L(j)=@min(city(i):L(i)+d(i,j))); end 最后一句 @for(city(j)|j#gt#1:L(j)=@min(city(i):L(i)+d(i,j))); 不明白具体是怎么运算的。比如j=2的时候,我理解的是只能得到L(2)=50.但是程序却可以得到L数组为0,50,35,30,0,25. |
» 猜你喜欢
宿州学院学报
已经有6人回复
航天502所 高瑛珂博士 婚内征婚 欺骗女性开房
已经有16人回复
投稿文章被秒拒了
已经有5人回复
地球科学部D01口青年基金,最低几A几B几C才能有几率中呀。
已经有3人回复
招收2026级博士生
已经有6人回复
博士申请
已经有5人回复
西安交大新媒学院副院长用撤稿论文结题
已经有7人回复
论文撤稿了
已经有9人回复
2楼2020-08-20 21:51:04












回复此楼