第十二周项目2操作用邻接表存储的图

来源:互联网 发布:手机wav播放软件 编辑:程序博客网 时间:2024/05/23 01:20
/** Copyright (c)2015,烟台大学计算机与控制工程学院* All rights reserved.* 文件名称:第十二周项目2.cpp* 作    者:彭子竹* 完成日期:2015年11月27日* 版 本 号:v1.0* 问题描述:假设图G采用邻接表存储,分别设计实现以下要求的算法:* 输入描述:无* 程序输出:测试数据*/

测试图:


代码:

 

#include "graph.h"//返回图G中编号为v的顶点的出度int OutDegree(ALGraph *G,int v){    ArcNode *p;    int n=0;    p=G->adjlist[v].firstarc;    while (p!=NULL)    {        n++;        p=p->nextarc;    }    return n;}//输出图G中每个顶点的出度void OutDs(ALGraph *G){    int i;    for (i=0; i<G->n; i++)        printf("  顶点%d:%d\n",i,OutDegree(G,i));}int main(){    ALGraph *G;    int A[7][7]=    {        {0,1,1,1,0,0,0},        {0,0,0,0,1,0,0},        {0,0,0,0,1,1,0},        {0,0,0,0,0,0,1},        {0,0,0,0,0,0,0},        {0,0,0,1,1,0,1},        {0,1,0,0,0,0,0}    };    ArrayToList(A[0], 7, G);    printf("各顶点出度:\n");    OutDs(G);    return 0;}


运行结果:

知识点总结:

图算法库的应用

0 0
原创粉丝点击