无向图的邻接矩阵

原创 2016年05月30日 11:28:30

1、图是一种复杂的数据结构,表现在不仅各顶点的度可以不同,而且顶点之间的关系也错综复杂。从图的定义可知一个图的信息包括两个部分:图中顶点的信息和描述顶点之间关系——边或弧的信息。因此无论采取什么方法来建立图的存储结构,都要完整、准确地反映这两部分的信息。
2、用邻接矩阵存储图,很容易确定图中任意两个顶点之间是否相连。但是,要确定图中具体有多少条边,则必须按行、按列对每个元素进行查找后方能确定,因此花费的时间代价较大,这也是用邻接矩阵存储图的局限性。

#include <stdio.h>
#include <stdlib.h>
#define MAXSIZE 20

typedef struct{
    int vertex[MAXSIZE];            //节点信息
    int edge[MAXSIZE][MAXSIZE];     //边信息   
}Graph;

void createGraph(Graph * p,int n,int e){
    Graph * g = p;

    for(int i=0;i<n;i++){           //输入节点值
        g->vertex[i] = i;

    for(int j=0;j<n;j++){           //初始化邻接矩阵
        for(int k=0;k<n;k++){
            g->edge[j][k] = 0;
        }   
    }   

    for(int t=0;t<e;t++){           //连通节点      
        printf("请输入边(i,j)\n");
        scanf("%d,%d",&i,&j);
        g->edge[i][j] = 1;
        g->edge[j][i] = 1;
    }
}

int main(){
    Graph * p = (Graph *)malloc(sizeof(Graph));
    int n,e;

    printf("请输入节点的个数。\n");
    scanf("%d",&n);
    printf("请输入边数。\n");
    scanf("%d",&e);
    createGraph(p,n,e);
    printf("无向图的邻接矩阵表示为:\n");

    for(int i=0;i<n;i++){
        for(int j=0;j<n;j++){
            printf("%4d",p->edge[i][j]);
        }
        printf("\n");
    }
    return 0;
}
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

(编程训练)再回首,数据结构——无向图的邻接矩阵表示、DFS、BFS

最近在复习数据结构,顺便看看大一的时候写的代码,看完之后比当初有了更加深刻的体会。        希望这些能提供给初学者一些参考。         在VC++6.0下可运行,当初还写了不少注释。  ...

【数据结构类】无向图的邻接矩阵表示法

采用邻接矩阵表示无向图,完成图的创建、图的深度优先遍历、图的广度优先遍历操作。其中图的顶点信息是字符型,图中顶点序号按字符顺序排列。排列。代码如下:  }#include     002.using ...

无向图的邻接矩阵和邻接表实现各种操作 -- C++语言描述

一:实现代码 #ifndef _GRAPH_H #define _GRAPH_H #include #include using namespace::std; /////////////...

有向图与无向图的邻接矩阵,邻接表 计算出度与入度

有向图与无向图的邻接矩阵,邻接表 计算出度与入度   实例 有向图的邻接矩阵输出出度和入度     说明 : 邻接矩阵的第i行的数组元素值为1的个数表示顶点i的出度,第i列的数组元素值为1表示顶...

图的邻接矩阵表示实验

  • 2014-01-10 16:41
  • 10KB
  • 下载

数据结构—图的邻接矩阵存储

/* 邻接矩阵的基本操作。 */ #include #include #include #define MAXV 50 #define LIMITLESS 9999 #define N 50 u...

图的邻接矩阵实现

  • 2013-06-25 14:49
  • 18KB
  • 下载

图的邻接矩阵

  • 2013-05-29 14:52
  • 805B
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)