图的定义&表示方法简述

(分为“无向图”与“有向图”)

*树也是特殊的无向图

由顶点与边(有长度)组成。

*无向图可看为“双向有向图”。

图的两种表示方法

1. 邻接矩阵

规则:若 a 能直接到达 b,则第 a 行 b 列的距离即为所填值。

若不能直接到达,则为 -1 或 +inf。

特别的,自己到自己距离为 0.

*若无向图,则表格对称。

(若无特别表明距离,则设为 1 即可。)

2. 邻接表

邻接表(链式前向星)存储图比邻接矩阵更加高效。
邻接表由点表(由点构成的表)(上)和边表(由边构成的表)(下)组成。
Head数组存储的是以该点为起点(按照加入时间顺序)最后加入的一条边。
边表from数组实际操作没有用处,不过在查错环节还是有用的。
Next数组是以该边起始点为起点的上一条边(按照加入时间顺序)

原文地址:https://www.cnblogs.com/soulwinter/p/map1.html

时间: 2024-10-12 07:31:30

图的定义&表示方法简述的相关文章

数据结构--图的定义和存储结构

图的定义 图(Graph)是由顶点的有穷非空集合和顶点之间边的集合组成.注意:在图结构中,不允许没有顶点,在定义中,如果V是顶点的集合,则强调了顶点集合V的有穷非空. 在图中,若不存在顶点到其自身的边,且同一条边不重复出现,则称这样的图为简单图. 图的存储结构 邻接矩阵 考虑到图是由顶点和边或者弧两部分组成的.合在一起比较困难,那就自然地考虑到分两个结构来分别存储.顶点不分大小.主次,所以用一个一位数组来存储是很不错的选择.而边或者弧是顶点与顶点之间的关系,一维搞不定,那就考虑用一个二维数组来存

图的定义和存储结构

学习目的及应用:导航 .GPS.网络规划.路径规划 交通流可以用一个图来模型化,每一条街道交叉口表示一个顶点,而每一条街道就是一条边.边的值可能是代表限制速度,或者是容量(车道的数目)等等.此时我们可能需要找出一条最短路,或用该信息找出最可能产生交通瓶颈的位置, 图的定义: 是由顶点的有穷非空集合和顶点之间边的集合组成一种数据结构 表示方法: graph = ( V,E ) V = { x | x 属于 某个数据对象} 是顶点的有穷非空集合 E = { (x, y) | (x, y) 属于 V

【Js】调用Android WebView定义的方法总结

先贴代码: package com.example.demowebview; import Android.os.Bundle;import android.os.Handler;import android.app.Activity;import android.webkit.JAVAscriptInterface;import android.webkit.JsResult;import android.webkit.WebChromeClient;import android.webkit

定义一个方法get_page(url),url参数是需要获取网页内容的网址,返回网页的内容。提示(可以了解python的urllib模块)

1 定义一个方法get_page(url),url参数是需要获取网页内容的网址,返回网页的内容.提示(可以了解python的urllib模块) 2 import urllib.request 3 4 def get_page(url): 5 response = urllib.request.urlopen(url) 6 html = response.read() 7 return html 8 9 print(get_page(url='https://www.baidu,com'))

ajax如何调用后台定义的方法

ajax如何调用后台定义的方法:由于ajax的独特优势,使得它在当前大量网站得到了广泛的应用,下面就介绍一下ajax如何调用后台定义的函数,虽然比较简单,不过希望能够给初学者带来一定的帮助,代码如下:1.首先我们先创建一个antzone.aspx页面.2.在它的cs文件中创建如下函数: public static string mytest(string first, string second) { return return first+second; } 2.html代码如下: <form

产品经理常用的四种需求收集方法简述

A 客户访谈 客户访谈是通过面对面的交流方式了解具体客户对产品.对流程的需求.观点和看法. 客户访谈的内容可以包括: 1.了解哪些需求对客户比较重要. 2.就了解到的一些需求请客户协助进行优先排序. 3.就问题改进建议的初步想法与客户进行讨论,确认是否能够满足客户需求. 客户访谈的优点包括: 1.由于是面对面的交流,因此在调查内容上更加灵活,可以随时根据问答状况就一些内容进行深入讨论,获得更多的客户感受. 2.客户可以再调查人的协助下,进行一些较为复杂的问卷调查. 3.客户访谈方式的适用面广,可

#定义一个方法get_num(num),num参数是列表类型,判断列表里面的元素为数字类型。其他类型则报错,并且返回一个偶数列表:(注:列表里面的元素为偶数)。

1 #定义一个方法get_num(num),num参数是列表类型,判断列表里面的元素为数字类型.其他类型则报错,并且返回一个偶数列表:(注:列表里面的元素为偶数). 2 def get_num(num): 3 if type(num)!= list: 4 return '您传入的不是列表!' 5 else: 6 for i in num: 7 if not isinstance(i,int): 8 return '请全部传入整数!' 9 return list(filter(lambda x:x

图的定义与术语

图的定义与术语 在线性表中,每个元素之间只有一个直接前驱和一个直接后继,在树形结构中,数据元素之间是层次关系,并且每一层上的数据元素可能和下一层中多个元素相关,但只能和上一层中一个元素相关. 但这仅仅都只是一对一,一对多的简单模型,如果要研究如人与人之间关系就非常复杂了. 万恶图为首,前边可能有些童鞋会感觉树的术语好多,可来到了图这章节,你才知道什么叫做真正的术语多! 图的定义 图(Graph)是由顶点的有穷非空集合和顶点之间边的集合组成,通常表示为:G(V,E),其中,G表示一个图,V是图G中

LinQ 定义扩展方法3.1

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Reflection; using System.Diagnostics; namespace ExtensionMethodDump { class Program { static void Main(string[] args) { var song = new { Artist = "Juss