構造方法如下:
讀入每條邊的信息
將邊存放在數組中
把數組中的邊按照起點順序排序
前向星就構造完了
通常用在點的數目太多,或兩點之間有多條弧的時候。
一般在別的數據結構不能使用的時候才考慮用前向星。
除了不能直接用起點終點定位以外,前向星幾乎是完美的。
---------------------------------------------------------------------------------------------------------
最基本的前項星最佳化的SPFA(有向圖),複雜度O(ke).
var
a,b,e:array[1..1000] of longint;
vis:array[1..2000] of boolean;
q,d,f:array[1..2001] of longint;
n,m,i,s,t:longint;
procedure qsort(l,r:longint);
var i,j,x,y:longint;
begin
i:=l;
j:=r;
x:=a[(l+r) shr 1];
repeat
while a[i]<x do inc(i);
while a[j]>x do dec(j);
if not(i>j) then begin
y:=a[i]; a[i]:=a[j]; a[j]:=y;
y:=b[i]; b[i]:=b[j]; b[j]:=y;
y:=e[i]; e[i]:=e[j]; e[j]:=y;
inc(i);
dec(j);
end;
until i>j;
if i<r then qsort(i,r);
if l<j then qsort(l,j);
end;
procedure spfa(s:longint);
var i,k,l,t:longint;
begin
fillchar(vis,sizeof(vis),0);
for i:=1 to n do d[i]:=maxlongint;
d[s]:=0;
l:=0;
t:=1;
q[1]:=s;
vis[s]:=true;
repeat
l:=l mod 10000 +1;
k:=q[l];
for i:=f[k] to f[k+1]-1 do
if d[k]+e[i]<d[b[i]] then
begin
d[b[i]]:=d[k]+e[i];
if not vis[b[i]] then begin
t:=t mod 10000 +1;
q[t]:=b[i];
vis[b[i]]:=true;
end;
end;
vis[k]:=false;
until l=t;
end;
Begin
readln(n,m);
for i:=1 to m do
readln(a[i],b[i],e[i]);
qsort(1,m);
for i:=1 to m do
if f[a[i]]=0 then f[a[i]]:=i;
f[n+1]:=m+1;
for i:=n downto 1 do
if f[i]=0 then f[i]:=f[i+1];
readln(s,t);
spfa(s);
writeln(d[t]);
end.
例如vijos 的P1082 叢林探險 便可以用前向星+SPFA快速解決
相關詞條
-
鏈式前向星
in in in
來源 橫向比較 代碼 -
欲星移
金光布袋戲虛擬人物。 鱗族師相。始帝嫡系血脈公子蘇的後人,海境單傳一脈的鮫族。曾以少年之姿接替先王身邊相位,更身兼帝王師輔佐現任鱗王。鱗族兩朝元老、海境...
角色形象 角色能力 人際關係 角色經歷 對戰記錄 -
萌娘星紀
《萌娘星紀》 是“她酷的像冰”創作的一部網路小說。本書以娘化為基礎,建立了一個龐大的異界大陸“星界”,通過星少女之間的紛爭而引出的一系列故事。精彩紛呈,...
內容簡介 作者介紹 主角信息 背景設定 勢力介紹 -
疏散星團
疏散星團,是指由數百顆至上千顆由較弱引力聯繫的恆星所組成的天體,直徑一般不過數十光年。疏散星團中的恆星密度不一,但與球狀星團中恆星高度密集相比,疏散星團...
歷史概述 形成 分類 分佈 構成 -
前鰭星鯊
前鰭星鯊(學名:Mustelus kanekonis)為皺唇鯊科星鯊屬的魚類。多分布於日本九州和四國以及南海和東海南部等地區,一般生活於暖水性的近海。該...
分類信息 形態特徵 生活習性 -
恰好像你的女兒
,馬母見男職員連句招呼也不打就開車離去,臉上露出不悅向馬仁星打探男職員...、錢財福,但自豪有三個阿爾 法女孩,智星 ( 禹喜珍 飾 )、仁星 ( 李秀景 飾)、熙星 ( 鄭慧星 飾)。當洪愛子與句句不離海軍陸戰隊精神但在...
劇情簡介 分集劇情 演職員表 角色介紹 音樂原聲 -
四季認星歌
四季認星歌是一種以歌曲的方式教大家認識星座的。四季認星歌可采春(捕魚歌)夏(小星星)秋(蝸牛與黃驪鳥)冬(妹妹背著洋娃娃)等曲調入歌。
四季認星歌 星座的故事 十二星座神話 黃道十二宮 昴宿星團 -
《星之卡比》
《星之卡比》星之卡比(簡稱卡比,英文叫Kirby;日文稱星のカービィ;又稱卡比之星、科比)是HAL研究所和任天堂公司合力創造的電子遊戲系列,也是該系列的主角。
遊戲屬性 遊戲簡介 遊戲列表 角色簡介 卡比誕生 -
星
星[天體].目前大多數天文學家都相信恆星都是由稀薄氣體雲和塵埃因引力坍縮而產生的。這些氣體雲和塵埃的引力的強弱同恆星一生的歸屬密切相關,換句話說,恆星初...
簡介 恆星的一生 相關新聞 詞語