今天開始把圖論的總結(jié)大坑填了
什么是圖?
一堆點(diǎn)被很多線連起來,組成的東西叫做圖(嚴(yán)格定義請(qǐng)自行查找)
圖的存儲(chǔ)
1、鄰接矩陣 - 不存在實(shí)現(xiàn)難度的存圖結(jié)構(gòu)
很明顯我們只需要把所有的點(diǎn)標(biāo)號(hào),建立一個(gè)二維數(shù)組,假設(shè)為 arr ,那么假設(shè) 1、2 兩點(diǎn)相連,則 arr[1][2] = arr[2][1] = 1 即可,對(duì)于有向圖,后者不需要置為 1;
代碼示例
int arr[MAXN][MAXN];
int m; // 邊的個(gè)數(shù)
// u、v 代表相連的兩點(diǎn),w 代表權(quán)值
int u, v, w;
for(int i=1; i<=m; i++) {
cin >> u >> v >> w;
arr[u][v] = arr[v][u] = w;
}