鄰接表用陣列實現(Pascal)

2022-08-11 12:55:19 字數 838 閱讀 6324

1樓:匿名使用者

如果是有向邊那麼不需要雙倍,如果是無向邊就需要雙倍。這取決於你在搜尋的時候,是否要求一條邊兩端的點能搜到對方。

如果是spfa的話,需要雙倍。加邊的時候 add(i,j,k); add(j,i,k)

type

edge=record

point,next,len:longint;

end;

a:array[1..maxn*2]of edge;

procedure add(x,y,z:longint);

begin

inc(tot); a[tot].point:=y; a[tot].

next:=first[x]; a[tot].len:

=z; first[x]:=tot;

end;

2樓:辰紫妍

var v:array[1..150,1..150] of integer;

i,j,x,y:integer;

begin

for i:=1 to n do

for j:=1 to n do

begin

read(x,y);

v[x,y]:=0;

v[y,x]:=0;

end;

end.

3樓:手機使用者

在pascal中,這是不可以的。你如果陣列定義為a:array[1..

100]of boolean;就只能賦值為true或者為false,但是你如果想把這個布林型的值賦值給一個整型的變數,可以是s:=ord(a[i]);true為1,false為0。

鄰接表的表示法,用鄰接表表示的圖的輸出 PrintGraph 的演算法 C語言

鄰接表 順序分配和鏈式分配的儲存結構 用鄰接表表示的圖的輸出 printgraph 的演算法 c語言 單連結串列類中的輸出流函式過載,輸出連結串列 圖類中再次過載輸出流函式。一次頂點表的迴圈,輸出。結果 有向圖用鄰接表如何表示,不是程式表示,求其詳細的過程,第一步 觀察圖有多少頂點,這裡,abcde...

如何使用INDEX與match函式組合實現兩個條件的匹配查詢

如果查詢的條件 e f g h 1 部門 產品 預算 我的計法 2 1 a 3 2 b 4 3 c 在e1 f4範圍內,則在h2中輸入 index c 2 c 9,match e2 f2,a 2 a 9 b 2 b 9,0 因為使用了陣列,在輸入完公式後要按ctrl shift enter組合鍵計算...

vb怎麼用陣列記錄y座標,VB怎麼用陣列記錄x,y座標

更直接的方法 不用自定義型別,通過節點號來讀寫座標dim bs 1 to 25 as single i as long for i 1 to 25 bs i 第 i 個節點的x座標 h7fff 第 i 個節點的y座標 記錄座標,第 i 個節點的x和y座標你自己改 next i 下面公式是讀取座標的 ...