您的位置:首页 > 其它

图的相关概念(备用)

2016-02-22 10:48 155 查看
依据图描述的对称关系把图分为有向图和无向图。
无向图:
无向图表示的是一对实体之间的对称关系。
度:一个图的度是与一个顶点相邻的顶点的个数(不分出和入)。
路径:A与B之间的路径表示(A,B)。
简单路径:如果一条路径没有重复边,也没有重复顶点(例外:第一个顶点
可以与最后一个相同),则为简单路径。
连通:每一对顶点之间都有路径。
有向图:
有向图表示的是一组实体之间的非对称关系。
顶点的入度:是指指向该顶点的边的数目,也是与它相邻的顶点的数量(与
无向图不一样)。
顶点的出度:是指该顶点出发的边的数量,也是它与之相邻的顶点的数量。
强连通:每一个顶点到其他每一个都有一条路径
弱连通:如果不计边的方向
图的表示和存储:
存储:采用的是链接矩阵和链接链表,邻接链表比矩阵省空间。表示{A,{B,C,E}},A的邻居BCE。
图的遍历:(DFS和BFS)
无向图的DFS(并不一次将某点的邻居访问完,而是采用回退):假设从某点A开始遍历,先按某种顺序(eg:字母的顺序)选出A的邻居中的其中一个代替A,然后重复A的操作,一直遍历到尽头P顶点,然后开始回退,从P点的前一个顶点Q开始,按某种顺序,从Q点还没有被遍历的邻居中选出一个顶点代替Q,依次遍历到尽头,然后再从Q的前一个顶点(PQ都是在以A为顶点的路径,例如以A为顶点的路径是ABCQP)开始回退。
无向图的BFS(一次将某点的邻居访问完,然后再进入下一个顶点):假设从某点A开始遍历,先按某种顺序(eg:字母的顺序)将A点的邻居遍历完,然后按这种顺序从A的邻居中选出下一个顶点B替代A,然后以B为顶点重复A的动作。然后再从A的邻居(除去B)中还没有被遍历的邻居中选出一个顶点替代B,重复A的动作。
###可以选几个例子练练手!!!!

遍历驱动器:
对于不连通的图,当遍历在某个区域停止后,需要遍历驱动器来重启遍历,以保证每个顶点被遍历

遍历的总时间:N+2E,N个顶点E条边,遍历和驱动的总时间:2*(N+E)
时间复杂度都是O(N+E)

有向图的遍历DFS和BFS与无向图的是一样的
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: