̰㷨һ㷨˼

̰ķĻ˼·
ĳһʼ𲽱ƽĿ꣬ԾܿĵøõĽ⡣ﵽĳ㷨еĳһټǰʱ㷨ֹͣ
㷨⣺
1. ܱ֤õѵģ
2. С⣻
3. ֻĳЩԼĿнķΧ


ʵָ㷨Ḷ́
ĳһʼ
while ܳĿǰһ do
 нһԪأ
нԪϳһн⣻



1[]һM=1507ƷƷԷָС
Ҫ󾡿װ뱳еƷֵܼ󣬵ܳ 

Ʒ
 A 
 B 
 C 
 D 
 E 
 F 
 G 
 
 
 35 
 30 
 60 
 50 
 40 
 10 
 25 
 
ֵ 
 10 
 40 
 30 
 50 
 35 
 40 
 30 
 



Ŀ꺯 pi
ԼװƷwi<=M( M=150)

1̰ĵĲԣÿѡֵƷװ뱳õĽǷţ
2ÿѡռռСƷװǷܵõŽ⣿
3ÿѡȡλֵƷΪⱾĲԡ ?

2[Դ·]һͼGÿ߶һǸȨֵc[i,j]·ȡбߵȨֵ֮͡ԴҪҳԴн· 

E.Dijkstra̰㷨Խ·⡣㷨Ҫ˼ǣֲ·ÿһһĿĶ·һܴﵽĿĶ̰ͨ׼ѡȡδ·ĶУѡ·̵ĿĶ㡣
 ö㼯S̰ѡϡҽ㵽ö·֪ʱöڼSʼʱSֻԴ 
 uΪGһ㣬ǰѴԴ㵽uмSеĶ·ΪԴu··¼еdist[ij]
 ÿδV-Sѡ·ȵĶuuӵSУͬʱ·ȽбҪ޸ġһV=S͵õԴж·Ҳ͵õĽ 


 

stra.pas 
3[]N޶̨ڻϴÿʼʱʱ±


 a
 b
 c
 d
 e
 f
 g
 
ʼ(si)
 0
 3
 4
 9
 7
 1
 6
 
(fi)
 2
 7
 7
 11
 10
 5
 8
 

ڿзÿ̨κʱദһŷָʹõĻٵĿз䷽ͱŷ䡣


 

?ϰ⣺
֪5֮аʼĿΪѰһٵķ·ߡ5еϵͼʾͼбŵĽʾУ֮ϵֵʾظúеĺٶӳijͳji֮ĺͬġ 



1. ̰˼룺
ÿһǰѡϣѡȡԵǰкСĺߣ
2. ͼ⣺1ͼ

ܺ=14 1-2-5-3-4-1
·߸Ϊ1-5-3-4-2-1ܺ=13
ԣ̰ķܵóѽ⡣
3. Ʒ
ггḶ́ŵġ


̣
1. ݽṹ
ϵͼ(ͼڽӾ)
const
c=array[1..5,1..5] of integer=((0,1,2,7,5),
(1,0,4,4,3),
(2,4,0,1,2),
(7,4,1,0,3));
2. ̰Ḷ́
begin
ʼге;־
óV
for i:=1 to n-1 do {n-1}
begin
s:=Vδĳеı߼кٵǸУ
ۼӺ
V:=s
Vеķʱ־
end;
һзصһУۼӺ
end;
3. ̣ʵָƷ
begin
for i:=1 to n do
begin
cost1:=maxint; {ʼ}
̰Ḷ́رcost
if cost<cost1 then 滻
end;


 
