?? vex.h
字號:
#include <iostream.h>
#include "primDlg.h"
#include "afx.h"
#ifndef _VEX_H
#define INFINITY INT_MAX //最大值:無窮大
#define MAX_VERTEX_NUM 20 //最大頂點個數
#define MAX 100000 //最大值
typedef int VRTYPE;
typedef struct
{float adj;}AdjMatrix[MAX_VERTEX_NUM][MAX_VERTEX_NUM];//帶權圖的權值類型
typedef struct
{VRTYPE vexs[MAX_VERTEX_NUM]; //頂點向量
AdjMatrix arcs; //鄰接矩陣
int vexnum; //頂點數
}MGraph; //圖的種類標志
typedef struct
{VRTYPE adjvex; //記錄生成樹頂點集合外各頂點距離集合內哪個頂點最近
float lowcost; //存放生成樹頂點集合內頂點到生成樹外各頂點的各邊上的當前最小權值
}closedge[MAX_VERTEX_NUM];
//最小生成樹的輔助數組
class vex{
public:int LocateVex(MGraph G, int u) //確定輸入的頂點在G中的位置
{ int i;
for(i=0;i<10;i++)
{if(u==G.vexs[i])return i;
}
if(i==10)return i=10;
//輸入的頂點u存在于圖G中
return -1;
}
int minimum(closedge close) //求當前最小邊在頂點集V-U中所依附的頂點位置
{
int i=0,j;float client = MAX;
while(close[i].adjvex != '\0') //該頂點仍在V-U中
{
if (client > close[i].lowcost && close[i].lowcost != 0)
{client = close[i].lowcost; //修改最小權值
j = i; } //修改最小邊在頂點集V-U中所依附的頂點位置
i++;}
return j;
}
};
#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -