目錄
成都創(chuàng)新互聯(lián)公司專注于企業(yè)營銷型網(wǎng)站建設、網(wǎng)站重做改版、上饒網(wǎng)站定制設計、自適應品牌網(wǎng)站建設、html5、商城網(wǎng)站制作、集團公司官網(wǎng)建設、外貿(mào)網(wǎng)站建設、高端網(wǎng)站制作、響應式網(wǎng)頁設計等建站業(yè)務,價格優(yōu)惠性價比高,為上饒等各大城市提供網(wǎng)站開發(fā)制作服務。題目:?
運行截圖:
代碼:?
報告截圖:
? 最小生成樹問題設計要求:在n個城市之間建設網(wǎng)絡,只需保證連通即可,求最經(jīng)濟的架設方法。存儲結(jié)構(gòu)采用多種。求解算法多種。
運行截圖:代碼:?#include#include#include#define MAX_VERTEX_NUM 20
#define OK 1
#define ERROR 0
#define MAX 1000
using namespace std;
typedef struct Arcell
{
double adj;
}Arcell,AdjMatrix[MAX_VERTEX_NUM][MAX_VERTEX_NUM];
typedef struct
{
char vexs[MAX_VERTEX_NUM]; //節(jié)點數(shù)組
AdjMatrix arcs; //鄰接矩陣
int vexnum,arcnum; //圖的當前節(jié)點數(shù)和弧數(shù)
}MGraph;
typedef struct Pnode //用于普利姆算法
{
char adjvex; //節(jié)點
double lowcost; //權值
}Pnode,Closedge[MAX_VERTEX_NUM];//記錄頂點集U到V-U的代價最小的邊的輔助數(shù)組定義
typedef struct Knode//用于克魯斯卡爾算法中存儲一條邊及其對應的2個節(jié)點
{
char ch1; //節(jié)點1
char ch2; //節(jié)點2
double value;//權值
}Knode,Dgevalue[MAX_VERTEX_NUM];
int CreateUDG(MGraph & G,Dgevalue & dgevalue);
int LocateVex(MGraph G,char ch);
int Minimum(MGraph G,Closedge closedge);
void MiniSpanTree_PRIM(MGraph G,char u);
void Sortdge(Dgevalue & dgevalue,MGraph G);
void Adjacency_Matrix(MGraph G);
void Adjacency_List(MGraph G,Dgevalue dgevalue);
int CreateUDG(MGraph & G,Dgevalue & dgevalue)//構(gòu)造無向加權圖的鄰接矩陣
{
int i,j,k;
cout<<"請輸入城市個數(shù)及其之間的可連接線路數(shù)目:";
cin>>G.vexnum>>G.arcnum;
cout<<"請輸入各個城市名稱(分別用一個字符代替):";
for(i=0;i>G.vexs[i];
for(i=0;i>dgevalue[k].ch1 >>dgevalue[k].ch2 >>dgevalue[k].value;
i = LocateVex(G,dgevalue[k].ch1);
j = LocateVex(G,dgevalue[k].ch2);
G.arcs[i][j].adj = dgevalue[k].value;
G.arcs[j][i].adj = G.arcs[i][j].adj;
}
return OK;
}
int LocateVex(MGraph G,char ch) //確定節(jié)點ch在圖G.vexs中的位置
{
int a ;
for(int i=0; i";
for(j=0;j";
else if(dgevalue[j].ch1!=G.vexs[i]&&dgevalue[j].ch2==G.vexs[i])
cout<";
cout<<"\b\b "<dgevalue[j].value)
{
temp = dgevalue[i].value;
dgevalue[i].value = dgevalue[j].value;
dgevalue[j].value = temp;
ch1 = dgevalue[i].ch1;
dgevalue[i].ch1 = dgevalue[j].ch1;
dgevalue[j].ch1 = ch1;
ch2 = dgevalue[i].ch2;
dgevalue[i].ch2 = dgevalue[j].ch2;
dgevalue[j].ch2 = ch2;
}
}
}
}
void MiniSpanTree_PRIM(MGraph G,char u)//普里姆算法求最小生成樹
{
int i,j,k;
Closedge closedge;
k = LocateVex(G,u);
for(j=0; j>s;
switch(s)
{
case 1:
cout<<"用鄰接矩陣存儲為:"<>u;
MiniSpanTree_PRIM(G,u);
break;
default:
cout<<"輸入有誤!";
break;
}
cout<>y;
if(y=='n')
break;
}
}
報告截圖:你是否還在尋找穩(wěn)定的海外服務器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調(diào)度確保服務器高可用性,企業(yè)級服務器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧
標題名稱:數(shù)據(jù)結(jié)構(gòu)課設———最小生成樹問題代碼+報告-創(chuàng)新互聯(lián)
分享地址:http://jinyejixie.com/article20/cceoco.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供動態(tài)網(wǎng)站、移動網(wǎng)站建設、網(wǎng)站策劃、微信小程序、App設計、標簽優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容