第11周项目1-图的基本算法库

  1. /* 
  2. *Copyright(c)2017,烟台大学计算机学院 
  3. *All right reserved. 
  4. *文件名:sk.cpp btree.h btree.cpp 
  5. *作者:盛凯 
  6. *完成日期:2017年12月13日 
  7. *版本号:v1.0 
  8. * 
  9. *问题描述:图的基本算法库
  10. *输入描述:无 

  1. *程序输出:见运行结果
  2. sk.cpp:
  3. #include <stdio.h>
    #include <malloc.h>
    #include "graph.h"


    int main()
    {
        MGraph g1,g2;
        ALGraph *G1,*G2;
        int A[6][6]=
        {
            {0,5,0,7,0,0},
            {0,0,4,0,0,0},
            {8,0,0,0,0,9},
            {0,0,5,0,0,6},
            {0,0,0,5,0,0},
            {3,0,0,0,1,0}
        };


        ArrayToMat(A[0], 6, g1);  //取二维数组的起始地址作实参,用A[0],因其实质为一维数组地址,与形参匹配
        printf(" 有向图g1的邻接矩阵:\n");
        DispMat(g1);


        ArrayToList(A[0], 6, G1);
        printf(" 有向图G1的邻接表:\n");
        DispAdj(G1);


        MatToList(g1,G2);
        printf(" 图g1的邻接矩阵转换成邻接表G2:\n");
        DispAdj(G2);


        ListToMat(G1,g2);
        printf(" 图G1的邻接表转换成邻接邻阵g2:\n");
        DispMat(g2);
        printf("\n");
        return 0;
    }
  4. 程序运行结果如图所示:

第11周项目1-图的基本算法库
反思总结:
图的算法库代码很多,耐心揣摩会有不同的体会和收获。