?? graph_input.h
字號:
//---------------------------------------------------------------------------
#ifndef GRAPH_INPUT_H_
#define GRAPH_INPUT_H_
//---------------------------------------------------------------------------
const int maxV=20, maxE=20; // 最大頂點(diǎn)數(shù), 最大邊數(shù)
// 鄰接鏈表的輸入類(不帶權(quán)值)
template <class T>
class graphInfo {
public:
bool directedGraph; // 若為true,則為有向圖;若為false,則為無向圖
int numV, numE; // 圖的實(shí)際頂點(diǎn)數(shù)、邊數(shù)
T vexs[maxV]; // 頂點(diǎn)數(shù)據(jù)的數(shù)組
struct {
T v1,v2;
} edges[maxE]; // 不帶權(quán)值的邊的數(shù)組
};
// 帶權(quán)值鄰接鏈表的輸入類
template <class T,class T1>
class EdgeNode { // 定義邊結(jié)點(diǎn)類
public:
T v1,v2; // 起始頂點(diǎn)和終止頂點(diǎn)
T1 cost; // 邊的權(quán)值
};
// 頂點(diǎn)結(jié)點(diǎn)類,用于表示帶權(quán)值鄰接鏈表的頭結(jié)點(diǎn)或其它結(jié)點(diǎn)
template <class T,class T1>
class VertexNode {
public:
T v; // 頂點(diǎn)
union {
int id; // 該頂點(diǎn)的入度
T1 cost; // 指向或依附該頂點(diǎn)的邊的權(quán)值
};
};
// 基于權(quán)值鄰接鏈表的網(wǎng)絡(luò)的輸入類
template <class T,class T1>
class weightedgraphInfo
{
public:
graphInfo<T> graph; // 圖信息
T1 edgesCost[maxE]; // 邊的權(quán)值數(shù)組
};
#endif
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -