自学内容网 自学内容网

7-6 图的存储-邻接矩阵

输出给定图的邻接矩阵。

输入格式:

输入第一行给出三个正整数,分别表示无向图的节点数N(1<N≤10)、边数M(≤50)和有向或无向标志S(1表示有向图,0表示无向图)。

随后的M行对应M条边,每行给出一对正整数,分别是该条边直接连通的两个节点的编号(编号 范围1~N)。

输出格式:

输出图的邻接矩阵,即N行N列的元素值,有边其值为1,无边其值为0;以方阵形式输出,每个元素间有一个空格,末尾均有一空格。

输入样例:

6 8 0
1 2
2 3
3 4
4 5
5 6
6 4
3 6
1 5

输出样例:

0 1 0 0 1 0 
1 0 1 0 0 0 
0 1 0 1 0 1 
0 0 1 0 1 1 
1 0 0 1 0 1 
0 0 1 1 1 0 

代码长度限制

16 KB

时间限制

400 ms

内存限制

64 MB

栈限制

8192 KB

#include <stdio.h>
#include <string.h>
int g[11][11];
int main()
{
    int n, m, s;
    scanf("%d%d%d", &n, &m, &s);
    while (m--)
    {
        int a, b;
        scanf("%d%d", &a, &b);
        g[a][b] = 1;
        if (!s)
            g[b][a] = 1;
    }
    for (int i = 1; i <= n; i++)
    {
        for (int j = 1; j <= n; j++)
            printf("%d ", g[i][j]);
        puts("");
    }
    return 0;
}

原文地址:https://blog.csdn.net/2401_85947543/article/details/143860999

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!