图Graph
存储结构:
1、邻接矩阵存储
typedef struct
{
char vex[MAXVEX];//顶点数
int arc[MAXVEX][MAXVEX];//邻接矩阵
int numVextexes,numEdges;//顶点数和边数
}MGraph;
边数相对节点较少时会浪费内存,因此可以使用链表实现
2、邻接表
此为边表
typedef struct EdgeNode
{
int adjvex;//存储顶点对应的下标
int weight;
struct EdgeNode* next;//指向下一个邻接点
}EdgeNode;
此为顶点表
typedef struct VertexNode
{
int data;//存储顶点信息
EdgeNode *firstedge;//指向第一个以该顶点为顶点的弧结点
}VertexNode[MAXVEX];
此为图表
typedef struct
{
VertexNode adjList;//顶点表节点
int numVertex,numEdges;//顶点数和边数
}GraphAdjList;
邻接链表和逆邻接链表可以分别解决出度和入度的问题,但是不能同时考虑,因此引入十字链表。
3、十字链表 (有向图)
顶点表结构为: data firstin firstout
边表结构为:tailvex headvex hlink tlink info
firstin,firstout:分别指向以该节点为弧头和弧尾的弧结点
tailvex:弧尾 headvex:弧头 hlink:指向弧头相同的下一条边 tlink:指向弧尾相同的下一条边
首先将顶点结点和所有的弧结点全部写出,然后分别将指针指向相应的弧。
注意,此处所有的指针都是指向弧的,与之前的相同。
图Graph的更多相关文章
- 纸上谈兵: 图 (graph)
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 图(graph)是一种比较松散的数据结构.它有一些节点(vertice),在某些节 ...
- 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (二)
本文属于图神经网络的系列文章,文章目录如下: 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (一) 从图(Graph)到图卷积(Graph Convolutio ...
- 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (一)
本文属于图神经网络的系列文章,文章目录如下: 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (一) 从图(Graph)到图卷积(Graph Convolutio ...
- 算法与数据结构基础 - 图(Graph)
图基础 图(Graph)应用广泛,程序中可用邻接表和邻接矩阵表示图.依据不同维度,图可以分为有向图/无向图.有权图/无权图.连通图/非连通图.循环图/非循环图,有向图中的顶点具有入度/出度的概念. 面 ...
- 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (三)
本文属于图神经网络的系列文章,文章目录如下: 从图(Graph)到图卷积(Graph Convolution):漫谈图神经网络模型 (一) 从图(Graph)到图卷积(Graph Convolutio ...
- echart——关系图graph详解
VueEchart组件见上一篇 <template> <VueEcharts :options="options" auto-resize /> </ ...
- 某种带权有向无环图(graph)的所有路径的求法
// 讨论QQ群:135202158 最近做某个东西,最后用图实现了,这里总结一下算法. 假设有以下带权有向无环图(连通或非连通,我这里用的是非连通的): 每个节点(node)可能与其他节点有向地相连 ...
- 小白学Python(18)——pyecharts 关系图 Graph
Graph-基本示例 import json import os from pyecharts import options as opts from pyecharts.charts import ...
- 【JZOJ6357】小ω的图(graph)
description analysis 拆位从高位到低位贪心 对于当前位,如果把所有当前位为\(1\)的边塞入,\(1\)和\(n\)连通,则该位必须为\(1\) 这个是因为高位的\(1\)比所有低 ...
- 图 Graph
本文主要内容为:图的定义以及基本术语 图的定义 图 图G的组成:由 数据元素的集合E 和 数据间的关系集合E 组成,记作:G = <V, E> 顶点 (vertex):数据元素,V就是顶点 ...
随机推荐
- http://www.ruanyifeng.com/blog/2007/03/metadata.html
http://www.ruanyifeng.com/blog/2007/03/metadata.html
- python流程控制语句 ifelse - 4
嵌套 #! /usr/bin/python a = int(input ("请输入一个整数:")) : : print ("无法显示") else : prin ...
- USACO Section 3.1: Agri-Net
minimal spanning tree的经典题 /* ID: yingzho1 LANG: C++ TASK: agrinet */ #include <iostream> #incl ...
- iPhone —— 如何自制铃声(图文)
iPhone不像其他手机可以直接将MP3格式的文件设为铃声.但如果想用自己喜欢的歌曲作为铃声该怎么办呢?请听我一一道来. 一.将MP3文件转换成iPhone铃声能识别的M4R格式文件 1.向iTune ...
- [原]1856-More is better-基础并查集
思路:注意n为0的时候输出1,还有内存.这题是数据水了,要不我的Count[ ]数组,开10^5绝对会WA.离散化还没想清楚,想清楚了再更新代码.[水过代码下面是正经的AC代码,其实这道题不用离散化, ...
- 浅谈学习C++时用到的【封装继承多态】三个概念
封装继承多态这三个概念不是C++特有的,而是所有OOP具有的特性. 由于C++语言支持这三个特性,所以学习C++时不可避免的要理解这些概念. 而在大部分C++教材中这些概念是作为铺垫,接下来就花大部分 ...
- 手持机连不上信道设置为13的AP
这个是正常的, 因为每个国家的CHANNEL 都不一样, 中国和美国都只支持 CHANNEL 1- 11 欧洲会到 12, 13 channal , 日本会到CHANNEL 14 . "O ...
- css中图片的四种地址引用
URL: CSS中四种引用图片asset的方式:
- iOS富文本(二)初识Text Kit
概述 Text Kit 是建立在Core Text上的文本布局系统,虽然没有Core Text那么强大的文本处理功能,但是对于大多数常见的文本布局用Text Kit能够很简单的实现,而不是用Core ...
- 瞎折腾之 NHibernate ORM框架的接触(MVC + Repository源码)(一)
在这炮火连天.技术更新迅猛的年代,不接触了解.甚至会用2~3种框架都不好意思说自己有多少年工作经验.况且出去面试也会有点吹牛的底子嘛. 这次折腾了NHibernate.其实这些ORM框架封装好了都是给 ...