<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 36,  comments - 3,  trackbacks - 0
    #include<stdio.h>
    //#include"graph.h"
    #include<iostream>
    using namespace std;
    typedef int InfoType;
    #define MAXV 100//最大頂點(diǎn)個(gè)數(shù);
    //以下為定義鄰接矩陣類(lèi)型
    typedef struct 
    {
    int no;//頂點(diǎn)編號(hào);
    InfoType info;//頂點(diǎn)其他信息,這里用于存放邊的權(quán)值;
    }VertexType;//頂點(diǎn)類(lèi)型;以后在這里改類(lèi)型;
    typedef struct 
    {
    int edges[MAXV][MAXV];//鄰接矩陣
    int n,e;              //頂點(diǎn)數(shù),弧數(shù)
    VertexType vexs[MAXV]; //存放頂點(diǎn)信息
    }MGraph;                      //圖的;鄰接矩陣類(lèi)型
    //以下定義鄰接表的類(lèi)型
    typedef struct ANode      //弧的結(jié)點(diǎn)結(jié)構(gòu)類(lèi)型
    {
    int adjvex;          //該弧的終點(diǎn)位置
    struct ANode *nextarc;//指向下一條弧的指針
    InfoType info;         //該弧的相關(guān)信息,這里用于存放權(quán)值
    }ArcNode;                //
    typedef int Vertex;
    typedef struct Vnode      //鄰接表頭結(jié)點(diǎn)的類(lèi)型
    Vertex data;          //頂點(diǎn)信息
    ArcNode *firstarc;  // 指向第一條弧
    }VNode;                       
    typedef VNode AdjList[MAXV]; //AdjList是鄰接表類(lèi)型
    typedef struct
    {
    AdjList adjlist;         //圖中頂點(diǎn)數(shù)n和邊數(shù)e
    int n,e;              //圖的鄰接表類(lèi)型
    }ALGraph;
    #define INF 10000
    void dispath(int dist[],int path[],int s[],int n,int v0)
    {
    int i;
    printf("path:");
    for(i=0;i<n;i++)
    printf(" %3d",path[i]);
    printf("\n");
    for(i=0;i<n;i++)
    {
    if(s[i]==1&&i!=v0)
    {
    printf("從%d到%d的最短距離長(zhǎng)度為:%d\t\n",v0,i,dist[i]);
    }
    else
    printf("從%d到%d不存在路徑\n",v0,i);
    }
    }
    void dijkstra(MGraph g,int v0)
    {
    int dist[MAXV],path[MAXV];
    int s[MAXV];
    int mindis,i,j,u,n=g.n;
    for(i=0;i<n;i++)
    {
    dist[i]=g.edges[v0][i];
    s[i]=0;
    if(g.edges[v0][i]<INF)
    path[i]=v0;
    else 
    path[i]=-1;
    }
    s[v0]=1;path[v0]=0;
    for(i=0;i<n;i++)
    {
    mindis=INF;
    u=-1;
    for(j=0;j<n;j++)
    {
    if(s[j]==0&&dist[j]<mindis)
    {
    u=j;
    mindis=dist[j];
    }
    }
    s[u]=1;
    for(j=0;j<n;j++)
    {
    if(s[j]==0)
    {
    if(g.edges[u][j]<INF&&dist[u]+g.edges[u][j]<dist[j])
    {
    dist[j]=dist[u]+g.edges[u][j];
    path[j]=u;
    }
    }
    }
    }
          printf("最短路徑為:\n");
     dispath(dist,path,s,n,v0);
    }
    int  main()
    {
    int i,j,u=0;
    MGraph g;
    int A[MAXV][6]={
    {INF,5,INF,7,INF,INF},
    {INF,INF,4,INF,INF,INF},
    {8,INF,INF,INF,INF,9},
    {INF,INF,5,INF,INF,6},
    {INF,INF,INF,5,INF,INF},
    {3,INF,INF,INF,1,INF}};
    g.n=6;
    g.e=10;
    for(i=0;i<g.n;i++)
    for(j=0;j<g.n;j++)
    g.edges[i][j]=A[i][j];
    printf("\n");
    dijkstra(g,u);
    printf("\n");
    return 0;
    }
    posted on 2013-05-15 19:15 天YU地___PS,代碼人生 閱讀(292) 評(píng)論(0)  編輯  收藏

    只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    <2013年5月>
    2829301234
    567891011
    12131415161718
    19202122232425
    2627282930311
    2345678

     一定要好好學(xué)習(xí),天天向上!

    常用鏈接

    留言簿

    隨筆分類(lèi)(8)

    隨筆檔案(35)

    文章分類(lèi)

    文章檔案(1)

    搜索

    •  

    最新評(píng)論

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 亚洲一区免费观看| 久久无码av亚洲精品色午夜| 99视频全部免费精品全部四虎| 欧洲 亚洲 国产图片综合| 免费A级毛片无码A∨男男| 久久免费动漫品精老司机| 亚洲欧美乱色情图片| 日韩亚洲一区二区三区| 毛片免费观看的视频| 国产精品美女免费视频观看| 亚洲午夜精品在线| 亚洲片一区二区三区| 67194熟妇在线永久免费观看| 免费精品国自产拍在线播放| 亚洲麻豆精品果冻传媒| 亚洲成A人片在线观看无码3D| 69精品免费视频| 思思久久99热免费精品6| 亚洲人成影院77777| 亚洲人成网亚洲欧洲无码久久| 毛片免费在线视频| 久久午夜夜伦鲁鲁片免费无码| 精品在线观看免费| 亚洲a级成人片在线观看| 亚洲精品无码鲁网中文电影| 国产成人免费手机在线观看视频 | 国产曰批免费视频播放免费s| 色费女人18女人毛片免费视频| 亚洲精品在线播放| 亚洲精品美女久久777777| 永久久久免费浮力影院| ww4545四虎永久免费地址| 久久国产精品免费一区| 亚洲国产成人精品无码区二本| 亚洲精品国产情侣av在线| 黑人大战亚洲人精品一区| 午夜国产羞羞视频免费网站| 女人与禽交视频免费看| 1000部啪啪毛片免费看| 色播在线永久免费视频网站| 无套内射无矿码免费看黄|