版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p><b> 課程設(shè)計(jì)報(bào)告</b></p><p><b> 課程設(shè)計(jì)的主要內(nèi)容</b></p><p> 設(shè)計(jì)數(shù)據(jù)結(jié)構(gòu)和算法,實(shí)現(xiàn)居民小區(qū)之間網(wǎng)絡(luò)光纖鋪設(shè)的最佳方案選擇,主要內(nèi)容如下:需要在某個(gè)城市n個(gè)居民小區(qū)之間鋪設(shè)網(wǎng)絡(luò)光纖,假設(shè)任意兩個(gè)居民小區(qū)之間均需要鋪設(shè)光纖,則在這n個(gè)居民小區(qū)之間只需要鋪設(shè)n-1條光纖即可形成一個(gè)網(wǎng)
2、絡(luò),但由于地理環(huán)境不同,所需要的代價(jià)也不盡相同。本課程設(shè)計(jì)要求事先隨機(jī)生成任意居民小區(qū)之間鋪設(shè)網(wǎng)絡(luò)光纖的代價(jià),并將代價(jià)存入文件,然后設(shè)計(jì)一個(gè)最佳方案進(jìn)行光纖鋪設(shè),使得既能連通所有小區(qū)之間的網(wǎng)絡(luò),又能使網(wǎng)絡(luò)光纖鋪設(shè)的代價(jià)最小,最終以圖形形式輸出所設(shè)計(jì)的最佳方案。</p><p><b> 功能和結(jié)構(gòu)設(shè)計(jì)</b></p><p> 1、克魯斯卡爾算法:</p&g
3、t;<p> 克魯斯卡爾算法的思想:</p><p> 設(shè)無(wú)向連通網(wǎng)為G=(V,E),令G的最小生成樹(shù)為T(mén)=(U,TE),其初態(tài)為U=V,TE={},這樣T中個(gè)頂點(diǎn)各自構(gòu)成一個(gè)連通分量。然后,按照邊的權(quán)值由小到大的順序,依次考察邊集E中的各條邊。若被考察邊的兩個(gè)頂點(diǎn)屬于T的兩個(gè)不同的連通分量,則將此邊加入到TE中,同時(shí)把兩個(gè)連通分量連接為一個(gè)連通分量;若被考察邊的兩個(gè)頂點(diǎn)屬于同一個(gè)連通分量,則舍
4、去此邊,以免造成回路,如此下來(lái),當(dāng)T中的連通分量個(gè)數(shù)為1時(shí),此連通分量便為G的一棵最小生成樹(shù)。</p><p><b> 算法過(guò)程描述:</b></p><p> 初始化:U=V; TE={};</p><p> 重復(fù)下述操作直到T中的連通分量個(gè)數(shù)為1;</p><p> 2、1 在E中尋找最短邊(U,V);
5、</p><p> 2、2 如果頂點(diǎn)u、v位于T的兩個(gè)不同連通分量,則</p><p> 2 . 2 . 1、 將邊(u、v)并入TE;</p><p> 2 . 2 . 2、 將這兩個(gè)連通分量合為一個(gè);</p><p> 2、3 在E中標(biāo)記邊(u,v),使得(u,v)不參加后續(xù)最短邊的選??;</p><p&g
6、t;<b> 模塊分析</b></p><p> 根據(jù)對(duì)模型的功能分析,該管道鋪設(shè)設(shè)計(jì)可以具有以下功能:</p><p> 網(wǎng)絡(luò)光纖鋪設(shè)信息的輸入;</p><p> 最小生成樹(shù)信息的輸出;</p><p><b> 抽象數(shù)據(jù)類型分析</b></p><p> V
7、ertex[] 居民區(qū)</p><p> Edge[][] 鄰接矩陣儲(chǔ)存居民區(qū)的關(guān)系</p><p> R[] 居民區(qū)之間的距離</p><p> vertexNum 表示居民區(qū)數(shù)量</p><p> edgeNum 表示居民區(qū)的路線數(shù)目</p><p><b&g
8、t; 功能分析</b></p><p><b> 信息輸入:</b></p><p><b> 程序輸出:</b></p><p><b> 最短路徑:</b></p><p><b> 流程圖和算法設(shè)計(jì)</b></p>
9、<p><b> //居民區(qū)數(shù)據(jù)輸入</b></p><p> cout<<"請(qǐng)輸入居民區(qū)的個(gè)數(shù):";</p><p> cin>>vertexNum;</p><p> cout<<endl;</p><p> cout<<&qu
10、ot;分別輸入居民區(qū):";</p><p> for(i=0;i<vertexNum;i++)</p><p> cin>>vertex[i];</p><p> cout<<"請(qǐng)輸入網(wǎng)絡(luò)光纖鋪設(shè)路線的總條數(shù):";</p><p> cin>>edgeNum;&l
11、t;/p><p> //二維數(shù)組存儲(chǔ)居民區(qū)信息</p><p> cout<<"請(qǐng)按此格式輸入邊和權(quán)值:n, m, k( 表示 n 居民區(qū)到 m 居民區(qū)的距離為 k 米):"<<endl;</p><p> for(i=0;i<edgeNum;i++)</p><p><b>
12、{</b></p><p> cin>>n>>m>>k;</p><p> Edge[n][m]=k;</p><p> Edge[m][n]=k;</p><p><b> R[i]=k;</b></p><p><b> }&
13、lt;/b></p><p> cout<<endl;</p><p> //對(duì)儲(chǔ)存權(quán)值的數(shù)組R[]進(jìn)行排序</p><p> void Graph<Datatype>::InsertSort()</p><p><b> {</b></p><p><
14、b> int k;</b></p><p> for(int i=1;i<edgeNum;i++)</p><p><b> {</b></p><p><b> k=R[i];</b></p><p> for(int j=i-1;k<R[j];j--)&l
15、t;/p><p> {R[j+1]=R[j];}</p><p><b> R[j+1]=k;</b></p><p><b> }</b></p><p><b> }</b></p><p> //克魯卡爾算法生成最小生成樹(shù)</p>
16、<p> void Graph<Datatype>::Kruskal()</p><p><b> {</b></p><p><b> Sum=0;</b></p><p> int i,b=0,d=0,num,vex1,vex2;</p><p> for(i
17、=0;i<vertexNum;i++)</p><p> parent[i]=-1;</p><p> cout<<"選取光纖鋪設(shè)路線:"<<endl;</p><p> for(num=0,i=0;i<edgeNum;i++)</p><p><b> {</b
18、></p><p> vex1=FindRoot(parent,edge[i].from);</p><p> vex2=FindRoot(parent,edge[i].to);</p><p> if(vex1!=vex2)</p><p><b> {</b></p><p>
19、 parent[vex1]=vex2;</p><p><b> num++;</b></p><p> cout<<"從居民區(qū)"<<edge[i].from<<"到"<<"居民區(qū)"<<edge[i].to<<",路徑長(zhǎng)度為
20、:"<<edge[i].weight<<" 米"<<endl;</p><p> edgeP[d].from=edge[i].from;</p><p> edgeP[d].to=edge[i].to;</p><p><b> d++;</b></p>&l
21、t;p> Sum=Sum+edge[i].weight;</p><p> if(num==vertexNum-1)return;</p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p>
22、;<p><b> 流程圖:</b></p><p><b> N</b></p><p><b> Y</b></p><p><b> 源程序代碼</b></p><p> #ifndef Graph_H</p>
23、<p> #define Graph_H</p><p> const int MaxVertex=10;</p><p> const int MaxEdge=100;</p><p> struct EdgeType</p><p><b> {</b></p><p>
24、 int from,to;</p><p> int weight;</p><p><b> };</b></p><p> template<class Datatype></p><p> class Graph</p><p><b> {</b>
25、;</p><p><b> public:</b></p><p><b> Graph();</b></p><p> ~Graph(){}</p><p> void Kruskal();</p><p> void InsertSort();</p&g
26、t;<p> void BubbleSort1();</p><p> int FindRoot(int a[],int n);</p><p> void outSum();</p><p> void Price();</p><p> void Print();</p><p><b
27、> private:</b></p><p> Datatype vertex[MaxVertex];</p><p> int Edge[MaxVertex][MaxVertex];</p><p> EdgeType edge[MaxEdge];</p><p> EdgeType edgeP[MaxEdge]
28、;</p><p> int parent[MaxVertex];</p><p> int vertexNum,edgeNum;</p><p> int R[MaxEdge];</p><p><b> int Sum;</b></p><p> int price;</p&g
29、t;<p><b> };</b></p><p><b> #endif</b></p><p> #include<iostream></p><p> using namespace std;</p><p> #include "Graph.h&
30、quot;</p><p> #include<graphics.h></p><p> #include<conio.h></p><p> #include <string></p><p> #include<iomanip></p><p> #incl
31、ude <fstream></p><p> template<class Datatype></p><p> Graph<Datatype>::Graph()</p><p><b> {</b></p><p><b> getch();</b>&l
32、t;/p><p> int i,j,k,n,m;</p><p> cout<<"請(qǐng)輸入居民區(qū)的個(gè)數(shù):";</p><p> cin>>vertexNum;</p><p> cout<<endl;</p><p> cout<<"分別
33、輸入居民區(qū):";</p><p> for(i=0;i<vertexNum;i++)</p><p> cin>>vertex[i];</p><p> cout<<"生成居民區(qū)序號(hào)表:"<<endl;</p><p> cout<<"┏━━
34、━";</p><p> for(int g=0;g<vertexNum;g++){cout<<"┳━━━";}cout<<"┓"<<endl;</p><p> cout<<"┃"<<left<<setw(6)<<"
35、居民區(qū)";</p><p> for(int h=0;h<vertexNum;h++)</p><p> {cout<<"┃"<<setw(6)<<vertex[h];}cout<<"┃"<<endl;</p><p> cout<<
36、"┣━━━";</p><p> for(int e=0;e<vertexNum;e++){cout<<"╋━━━";}cout<<"┫"<<endl;</p><p> cout<<"┃"<<left<<setw(6)<&
37、lt;"序號(hào)";</p><p> for(int f=0;f<vertexNum;f++){cout<<"┃"<<setw(6)<<f;}cout<<"┃"<<endl;</p><p> cout<<"┗━━━";</p
38、><p> for(int t=0;t<vertexNum;t++){cout<<"┻━━━";}cout<<"┛"<<endl;</p><p><b> getch();</b></p><p> cout<<endl;</p>&
39、lt;p> cout<<"請(qǐng)輸入網(wǎng)絡(luò)光纖鋪設(shè)路線的總條數(shù):";</p><p> cin>>edgeNum;</p><p> cout<<endl;</p><p> if(edgeNum>vertexNum*(vertexNum-1)/2)</p><p><
40、;b> {</b></p><p><b> int c;</b></p><p> cout<<"輸入條數(shù)有誤,請(qǐng)重新輸入!"<<endl;</p><p><b> cin>>c;</b></p><p> ed
41、geNum=c;</p><p><b> }</b></p><p> for(i=0;i<MaxVertex;i++)</p><p> for(j=0;j<MaxVertex;j++)</p><p> Edge[i][j]=0;</p><p> cout<&l
42、t;"請(qǐng)按此格式輸入邊和權(quán)值:n, m, k( 表示 n 居民區(qū)到 m 居民區(qū)的距離為 k 米):"<<endl;</p><p> for(i=0;i<edgeNum;i++)</p><p><b> {</b></p><p> cin>>n>>m>>k;&l
43、t;/p><p> Edge[n][m]=k;</p><p> Edge[m][n]=k;</p><p><b> R[i]=k;</b></p><p><b> }</b></p><p> cout<<endl;</p><p&
44、gt;<b> }</b></p><p> template<class Datatype></p><p> void Graph<Datatype>::InsertSort()</p><p><b> {</b></p><p><b> int
45、k;</b></p><p> for(int i=1;i<edgeNum;i++)</p><p><b> {</b></p><p><b> k=R[i];</b></p><p> for(int j=i-1;k<R[j];j--)</p>&
46、lt;p> {R[j+1]=R[j];}</p><p><b> R[j+1]=k;</b></p><p><b> }</b></p><p><b> }</b></p><p> template<class Datatype></p
47、><p> void Graph<Datatype>::BubbleSort1()</p><p><b> {</b></p><p> int count=0;</p><p> while(count!=edgeNum)</p><p><b> {</b&
48、gt;</p><p> for(int i=0;i<vertexNum;i++)</p><p> for(int j=i;j<vertexNum;j++)</p><p><b> {</b></p><p> if(Edge[i][j]==R[count])</p><p&g
49、t;<b> {</b></p><p> edge[count].from=i;</p><p> edge[count].to=j;</p><p> edge[count].weight=R[count];</p><p><b> count++;</b></p>
50、<p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> template<class Datatype></p&
51、gt;<p> void Graph<Datatype>::Kruskal()</p><p><b> {</b></p><p><b> Sum=0;</b></p><p> int i,b=0,d=0,num,vex1,vex2;</p><p> fo
52、r(i=0;i<vertexNum;i++)</p><p> parent[i]=-1;</p><p> cout<<"選取光纖鋪設(shè)路線:"<<endl;</p><p> for(num=0,i=0;i<edgeNum;i++)</p><p><b> {<
53、;/b></p><p> vex1=FindRoot(parent,edge[i].from);</p><p> vex2=FindRoot(parent,edge[i].to);</p><p> if(vex1!=vex2)</p><p><b> {</b></p><p&g
54、t; parent[vex1]=vex2;</p><p><b> num++;</b></p><p> cout<<"從居民區(qū)"<<edge[i].from<<"到"<<"居民區(qū)"<<edge[i].to<<",路徑
55、長(zhǎng)度為:"<<edge[i].weight<<" 米"<<endl;</p><p> edgeP[d].from=edge[i].from;</p><p> edgeP[d].to=edge[i].to;</p><p><b> d++;</b></p>
56、<p> Sum=Sum+edge[i].weight;</p><p> if(num==vertexNum-1)return;</p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p
57、><p> template<class Datatype></p><p> int Graph<Datatype>::FindRoot(int parent[],int v)</p><p><b> {</b></p><p><b> int t=v;</b>&l
58、t;/p><p> if(parent[t]>-1) t=parent[t];</p><p><b> return t;</b></p><p><b> }</b></p><p> template<class Datatype></p><p>
59、; void Graph<Datatype>::outSum()</p><p><b> {</b></p><p> cout<<endl;</p><p> cout<<"這 "<<vertexNum<<" 個(gè)居民區(qū)之間鋪設(shè)網(wǎng)絡(luò)光纖總長(zhǎng)度中最
60、短的長(zhǎng)度為:"<<Sum<<" 米"<<endl;</p><p> cout<<endl;</p><p><b> }</b></p><p> template<class Datatype></p><p> voi
61、d Graph<Datatype>::Price()</p><p><b> {</b></p><p> cout<<"請(qǐng)輸入單位長(zhǎng)度路線鋪設(shè)的價(jià)格(元):";</p><p> cin>>price;</p><p> cout<<endl
62、;</p><p> cout<<"所以,這 "<<vertexNum<<" 個(gè)居民區(qū)之間鋪設(shè)網(wǎng)絡(luò)光纖所需最小費(fèi)用為:"<<Sum*price<<" 元"<<endl;</p><p><b> }</b></p>&l
63、t;p> template<class Datatype></p><p> void Graph<Datatype>::Print()</p><p><b> {</b></p><p> int x1,x2,y1,y2;</p><p> initgraph(500,500)
64、;</p><p> if(vertexNum>0){</p><p> circle(100,200,25);</p><p> outtextxy(100,200,vertex[0]);</p><p> if(vertexNum>1){</p><p> circle(250,100,25)
65、;</p><p> outtextxy(250,100,vertex[1]);</p><p> if(vertexNum>2){</p><p> circle(150,350,25);</p><p> outtextxy(150,350,vertex[2]);</p><p> if(verte
66、xNum>3){</p><p> circle(350,350,25);</p><p> outtextxy(350,350,vertex[3]);</p><p> if(vertexNum>4){</p><p> circle(400,200,25);</p><p> outtextx
67、y(400,200,vertex[4]);</p><p> if(vertexNum>5)circle(250,250,25);</p><p> outtextxy(250,250,vertex[5]);}}}}}</p><p> for(int n=0,k=0;k<edgeNum;k++)</p><p><b
68、> {</b></p><p> switch(edgeP[n].from)</p><p><b> {</b></p><p> case 0:{x1=100;y1=200;}break;</p><p> case 1:{x1=250;y1=100;}break;</p>
69、<p> case 2:{x1=150;y1=350;}break;</p><p> case 3:{x1=350;y1=350;}break;</p><p> case 4:{x1=400;y1=200;}break;</p><p> case 5:{x1=250;y1=250;}break;</p><p><
70、;b> }</b></p><p> switch(edgeP[n].to)</p><p><b> {</b></p><p> case 0:{x2=100;y2=200;}break;</p><p> case 1:{x2=250;y2=100;}break;</p>
71、<p> case 2:{x2=150;y2=350;}break;</p><p> case 3:{x2=350;y2=350;}break;</p><p> case 4:{x2=400;y2=200;}break;</p><p> case 5:{x2=250;y2=250;}break;</p><p><
72、;b> }</b></p><p> line(x1,y1,x2,y2);</p><p><b> n++;</b></p><p><b> }</b></p><p><b> getch();</b></p><p>
73、 closegraph();</p><p><b> }</b></p><p> #include<iostream></p><p> using namespace std;</p><p> #include "Graph.cpp"</p><p&g
74、t; #include<graphics.h></p><p> #include<conio.h></p><p> int main()</p><p><b> {</b></p><p><b> int a1;</b></p><p&g
75、t; for(a1=0;a1<25;a1++) </p><p> cout<<" "; </p><p> cout<<"網(wǎng)絡(luò)光纖鋪設(shè)的最佳方案選擇"<<endl; </p><p> for(a1=0;a1<21;a1++) </p><p>
76、 cout<<" "; </p><p> for(a1=0;a1<34;a1++) </p><p> cout<<"*"; </p><p> cout<<endl; </p><p> for(a1=0;a1<21;a1++) <
77、/p><p> cout<<" "; </p><p> cout<<"* *"<<endl;</p><p> for(a1=0;a1<21;a1++) </p><p> cout<
78、<" "; </p><p> cout<<"* 歡迎使用本程序,希望本程序可以 *"; </p><p> cout<<endl; </p><p> for(a1=0;a1<21;a1++) </p><p> cout<<" &
79、quot;; </p><p> cout<<"* 幫您選擇最佳鋪設(shè)方案 *"; </p><p> cout<<endl; </p><p> for(a1=0;a1<21;a1++) </p><p> cout<<" ";&
80、lt;/p><p> cout<<"* *"; </p><p> cout<<endl; </p><p> for(a1=0;a1<21;a1++) </p><p> cout<<" "
81、;</p><p> for(a1=0;a1<34;a1++)</p><p> cout<<"*";</p><p> cout<<endl;</p><p> Graph<char>G;</p><p> G.InsertSort();<
82、/p><p> G.BubbleSort1();</p><p> G.Kruskal();</p><p> G.outSum();</p><p> G.Price ();</p><p><b> getch();</b></p><p> G.Print (
83、);</p><p> cout<<endl;</p><p> for(a1=0;a1<15;a1++) </p><p> cout<<" "; </p><p> for(a1=0;a1<25;a1++) </p><p> cout<<
84、;"*"; </p><p> cout<<endl; </p><p> for(a1=0;a1<15;a1++) </p><p> cout<<" "; </p><p> cout<<"* 謝 謝 您 的 使 用 ! *&qu
85、ot;<<endl; </p><p> for(a1=0;a1<15;a1++) </p><p> cout<<" ";</p><p> for(a1=0;a1<25;a1++)</p><p> cout<<"*";</p>
86、<p> cout<<endl;</p><p><b> return 0;</b></p><p><b> }</b></p><p><b> 課程設(shè)計(jì)總結(jié)</b></p><p> 經(jīng)過(guò)兩個(gè)多星期的不懈努力,我們小組終于完成本次課程
87、設(shè)計(jì)一一《網(wǎng)絡(luò)光纖鋪設(shè)的最佳方案選擇》,我們選用克魯斯卡爾算法進(jìn)行程序設(shè)計(jì)。首先,我們對(duì)程序的大概框架進(jìn)行構(gòu)想,設(shè)計(jì)好基本的邏輯框架,然后針對(duì)克魯斯卡爾算法進(jìn)行程序編寫(xiě),對(duì)于高級(jí)程序員來(lái)說(shuō),雖然bug可以使程序崩潰,但他們依然可以閑庭信步般把問(wèn)題解決,可是對(duì)于我們這些正在成長(zhǎng)中的初級(jí)程序員來(lái)說(shuō),那就是一個(gè)災(zāi)難,需要我們一起扛才能度過(guò)難關(guān),于是我們的合作精神就被發(fā)揮得淋漓盡致了,不管對(duì)外還是對(duì)內(nèi),我們這些菜鳥(niǎo)程序員都是一家子,處理分析問(wèn)題
88、就跟快,完成了編寫(xiě),再經(jīng)過(guò)多次的調(diào)試,終于完成本次程序設(shè)計(jì)。</p><p> 通過(guò)本次程序設(shè)計(jì),使我們對(duì)本學(xué)期學(xué)習(xí)的數(shù)據(jù)結(jié)構(gòu)有了進(jìn)一步的了解,鞏固上一學(xué)年所學(xué)的知識(shí);而且,我們對(duì)程序設(shè)計(jì)的算法有了基本的認(rèn)識(shí),同時(shí),讓我們知道算法對(duì)于一個(gè)程序來(lái)說(shuō)是非常重要的,好的程序就應(yīng)該要用好的算法;本次課程設(shè)計(jì)中涉及到圖形的處理,但我們對(duì)于圖形是一無(wú)所知的,經(jīng)過(guò)在多種渠道的查閱,最后通過(guò)使用C++圖形庫(kù)EasyX實(shí)現(xiàn)圖形處
89、理。</p><p> 本次程序設(shè)計(jì)使我們學(xué)會(huì)了很多,鞏固課本所學(xué)的知識(shí)的同時(shí),也掌握一些課外的有關(guān)程序設(shè)計(jì)的知識(shí),希望以后能夠編寫(xiě)出更好的程序!</p><p><b> 參考資料</b></p><p> 1、胡明 《數(shù)據(jù)結(jié)構(gòu)》(C++版) 清華大學(xué)出版社</p><p> 2、張勇 《C++語(yǔ)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 課程設(shè)計(jì)報(bào)告---管道鋪設(shè)施工
- 計(jì)算機(jī)網(wǎng)絡(luò)課程設(shè)計(jì)報(bào)告--智能小區(qū)網(wǎng)絡(luò)設(shè)計(jì)
- 課程設(shè)計(jì)報(bào)告---管道鋪設(shè)施工的最佳方案選擇
- 課程設(shè)計(jì)報(bào)告--管道鋪設(shè)施工的最佳方案選擇
- 光信-光纖通信課程設(shè)計(jì)報(bào)告
- 小區(qū)物業(yè)管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 小區(qū)物業(yè)管理系統(tǒng)課程設(shè)計(jì)報(bào)告
- 學(xué)校網(wǎng)絡(luò)設(shè)計(jì)課程設(shè)計(jì)報(bào)告
- 燃?xì)庹n程設(shè)計(jì)--小區(qū)燃?xì)夤?yīng)課程設(shè)計(jì)
- 復(fù)合材料課程設(shè)計(jì)--底面鋪設(shè)管道
- 網(wǎng)絡(luò)工程實(shí)踐課程設(shè)計(jì)報(bào)告--校園網(wǎng)網(wǎng)絡(luò)課程設(shè)計(jì)
- 小區(qū)綜合布線的課程設(shè)計(jì)
- 網(wǎng)絡(luò)營(yíng)銷(xiāo)課程設(shè)計(jì)報(bào)告
- 光纖通信課程設(shè)計(jì)
- 智能小區(qū)網(wǎng)絡(luò)流量分析與設(shè)計(jì)課程設(shè)計(jì)
- web課程設(shè)計(jì) 《web網(wǎng)絡(luò)編程技術(shù)》課程設(shè)計(jì)報(bào)告
- 光纖通信課程設(shè)計(jì)
- 換熱站課程設(shè)計(jì)--小區(qū)換熱站設(shè)計(jì)
- 有線電視網(wǎng)絡(luò)課程設(shè)計(jì)--catv光纖網(wǎng)絡(luò)設(shè)計(jì)
- 光纖課程設(shè)計(jì)--通信傳輸系統(tǒng)的設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論