c 實現kruskal演算法(最小生成樹)

2021-10-11 01:35:55 字數 902 閱讀 5133

#include

using

namespace std;

const

int max =15;

//陣列最大容量

struct edge

;class

graph

;//定位

int graph::

locate

(char ch)

}return i;

}//建構函式

graph::

graph

(int v,

int e)

:vertex_num

(v),

edge_num

(e)//初始化parent陣列

for(

int i =

0; i <

this

->vertex_num; i++

)//構造邊集陣列

cout <<

"請輸入兩個頂點及其權值:"

<< endl;

for(

int i =

0; i <

this

->edge_num; i++)}

//氣泡排序(將邊集陣列按權值從小到大排序)

void graph::

sort

(edge *edge)}}

}//查詢根

int graph::

find_root

(int

*parent,

int node)

return node;

}//kruskal演算法

void graph::

kruskal()

}}intmain()

最小生成樹Kruskal演算法實現C 實現

include stdafx.h include define max 100 typedef int weitype using namespace std struct edge 邊集和 edge edge max 已找到的最小生成樹其中一部分的秩 int rank max 已找到的最小生成樹其...

最小生成樹Kruskal演算法實現C 實現

include stdafx.h include define max 100 typedef int weitype using namespace std struct edge 邊集和 edge edge max 已找到的最小生成樹其中一部分的秩 int rank max 已找到的最小生成樹其...

最小生成樹Kruskal演算法實現C 實現

include stdafx.h include define max 100 typedef int weitype using namespace std struct edge 邊集和 edge edge max 已找到的最小生成樹其中一部分的秩 int rank max 已找到的最小生成樹其...