子图发现算法
① 对于一个复杂的有向无环网络,怎么寻找它的一个子图,其中子图内的箭头只在子图内,也就是个闭集这
说明不清晰。什么叫子图内的箭头只在子图内?我猜你想说,子图中的任意节点只能指向该子图内某个节点,不能指向子图外部的节点。
方法是:找到该DAG图的所有叶子节点(出度为0的节点)。如果该子图只包括一个叶子,则该子图是以该叶子节点为根的反向DAG图(即从该节点出发,逆着边的方向,得到反向DAG图。这显然不唯一,非常多);如果包括多个叶子(比如n个叶子),则该子图是前面n个反向DAG图的并。
总之,一个很简单的DAG图就有很多这种子图,非常多。前面的算法中含有冗余的计算,可以进一步改善。
② 图的最小生成树算法
图的生成树和最小生成树生成树(SpanningTree):如果一个图的子图是一个包含图所有节点的树,那这个子图就称为生成树.
③ 数据结构中静态图数据结构的子图匹配算法有哪些
您可以在管理区--产品管理--数据库产品定义中,
检查产品定义,确保“SQL2000数据库产品”使用的是“SQL2000的服务
器”,如果您将“SQL2000数据库产品”错位的设置为“使用MYSQL的服务
器”,就会造成开通一个数据库失败,请您到管理区--产品管理--数据
库产品定义中的“SQL2000数据库产品”改为使用的是“SQL2000的服务
器”,就可以解决这个问题。
④ 静态图数据结构的子图匹配算法有哪些
是程序的灵魂,数据结构是计算机存储、组织数据的方式,整形用二进制储存,字符串用一字节等;算法是一种程序开发流程思想,要锻炼好呀!
⑤ 求大神解释一下frequent subgraphs是个什么概念
频繁子图 一种算法,网络有介绍。
(1)按照模式挖掘算法的输入数据类型进行分类:分为graph-transaction和singie-graph两种类型。graph-transaction型模式挖掘所处理的输入数据是由许多规模相对较小的图构成的集合,每个图可能只包含几十到几百个顶点;而single-graph型模式挖掘的对象则只有-个大图,这个大图包含成千上万个顶点。这两种类型的区别还在于它们计算候选子图频度时所使用的策略。graph-transaction型计算模式在图集合每个图中是否出现,不管它在同-个图中出现了多少次均计数-次,而single-graph型则计算模式在这个大图中不同位置出现的总次数。根据两种类型的特征,解决graph-transaction类型的算法不能用来解决single-graph类型模式挖掘,但是Single-graph类型的算法却能方便应用于graph-transaction类型。
(2)按照采用度量的不同进行分类:分为支持度(support)、支持度-置信度、MDL(minimumdescri-Ptionlength)三种。支持度型挖掘是以子图在输入图中出现的次数来作为度量的,大部分算法都是基于支持度的;MDL型挖掘是以压缩输入数据的程度来度量,-般采用公式valuo(s,g)=dl(g)/(dl(g1)+dl(g2))来计算,其中:是子图,g是输入的图集合,dl(g)表示图集合g的存储空间,dl(g2)表示把g中所有出现:的地方都用同-个顶点替换后的图形所需的存储空间;支持度-置信度型挖掘是以既要满足最小支持度又要满足最小置信度来衡量的。还有其它-些度量方法,这里就不再介绍了。
⑥ 求一个图的最大完全子图的算法
最大完全子图,超超的地址我打不开
用度的方法是不行的,因为完全子图可能每一个结点的度都不一样
我想能不能这样:
从某一个结点开始深度优先遍历,同时用一个路径数组记录下遍历走过的每一个结点,每进入遍历结点,先看看该结点的邻接点是否包含已知路径上的所有结点,若是,则把该结点加入路径数组,继续从新结点遍历;若不是,回溯到上一结点;这样直到无法回溯(另外设置一个访问状态数组VisitIN[],起始结点的所有邻接点VisitIN值为1就无法回溯了)就找到一个完全子图
把起始结点访问状态Visit[]改为1,继续从下一结点出发重复上述过程,直到找到最大的完全子图。(算法的关键是判断某一结点的邻接点是否包含路径数组的所有结点)
不过这样做复杂度是高的了,我还没想到更好的方法。
各点度不一样不要紧,可以降低一级,再查。如下图中,最大度数为3,先找是否有另外3个3度点且都1-1相连,发现没有,就降为寻找有否3个2度点相互都1-1相连,这样就找到了。
2
*
/ \
/ \
*-----*----*----*
2 3 2 1
⑦ 求图论的生成子图算法,要求生成尽可能多的子图
在图论的历史中,还有一个最着名的问题--四色猜想。这个猜想说,在一个平面或球面上的任何地图能够只用四种颜色来着色,使得没有两个相邻的国家有相同的颜色。每个国家必须由一个单连通域构成,而两个国家相邻是指它们有一段公共的边界,而不仅仅只有一个公共点。20世纪80-90年代曾邦哲的综合系统论(结构论)观将“四色猜想”命题转换等价为“互邻面最大的多面体是四面体”。四色猜想有一段有趣的历史。每个地图可以导出一个图,其中国家都是点,当相应的两个国家相邻时这两个点用一条线来连接。所以四色猜想是图论中的一个问题。它对图的着色理论、平面图理论、代数拓扑图论等分支的发展起到推动作用。 (下图是在上下对折再左右对折以后形成一个轮胎形状,有7个区域两两相连,就是说在一个环面上作图,需要7种颜色,外国数学家构造林格证明:Np=[(7+√1+48p)/2],p=1,N1=7。
图论中最着名的四色猜想解决办法 韩世君利用三角形性质和数学归纳法解决了四色猜想 摘要:将平面图的不相连点使其相连(这样增加着色难度),形成有许多三角形相连的平面图,根据三角形的稳定性,利用数学归纳法,平面图进行着色最多需4种颜色。 定理:在平面图中,对不同顶点进行着色,相邻顶点着不同颜色,不相邻顶点着相同颜色,则最多需4种颜色。 证明:在平面图中,不在同一直线上的三点决定一个平面,那么三点构成的三角形是平面图中最基本、最简单、最稳定、密闭的图形。 由于在对地图着色过程中不考虑图的具体形状只考虑点是否相邻,将平面图的不相连点使其相连(这样增加着色难度),形成有许多三角形相连的平面图(三点以下肯定成立)。如图1:添加辅助线(不相邻的点使其相邻,这样就增加了着色的色数,有利于证明),将图1分解为4个△ABC。 在平面图中的无数点中,任取相邻三点构成各点相邻的△ABC(见图2),则需3种颜色A B C,在平面图中再任取一点 D 与 A B C 三点相邻,同时D又与A B C三点相连后形成三角形。任取一点E与 A、B、C、D四色相连,E必与四色之一色相同即E点在△ABD中与C色相同、在△ACD中与B色相同、在△BCD中与A色相同、在△ABC外与D色相同,E与另外三色相连形成新的三角形。 在三角形的三点之外任取一点只有在三角形的内部和外部两种情况且这两种情况的点不会相邻,该点最多与三角形的三点相连且又形成新的三角形。 继续选取一点进行着色,该点同样最多与三角形的三点相连且又形成新的三角形,该点至少为四色中的一色。逐点(第n点)着色至将所有点(第n+1点)着色只须A、B、C、D四色其中一色。 图的着色方法:任意一张地图,将孤立的点用一种颜色着色(A色),不能形成密闭图形的相连的点用两种颜色(A、B色)。将剩余的点不相连的用虚线使其相连形成许多三角形,完全不相连的图不进行相连。任取相连三点着三种颜色(A、B、C色),再取与其相连的点,如果与A、B、C三色的点都相连着D色,否则着与其不相连的其中一色,用虚线相连的点可以用同一种颜色也可以用两种颜色,依次取与着色的点相连的点用以上方法进行着色。这样对所有的点进行着色最多用四色(A、B、C、D色)。 图论的广泛应用,促进了它自身的发展。20世纪40-60年代,拟阵理论、超图理论 、极图理论,以及代数图论、拓扑图论等都有很大的发展 拓扑学在泛函分析、李群论、微分几何、微分方程和其他许多数学分支中都有广泛的应用。 (右图是:下面的三叉安在上面的环面上,就是有3个洞的9个两两相连区域,上面的图上下对折再左右对折就是一个轮胎形状环面图2)
左图是亏格为4时10个两两相连区域构造,上图上下对折,再左右对折,形成一个轮胎形状,再把下面的四叉按照A,B,C,D编号安上,就是有4个洞的两两相连区域图3(王晓明构造)。
⑧ 图同构,子图匹配算法c++代码
子图同构的?、这悬赏分太低了。。。难度又大、、
⑨ 静态图数据结构子图匹配算法有哪些
直观点就是线路规划,流量分析之类的直观图结构问题. 广义来说很多包含关系对的逻辑结构都可以转化成图,比如匹配问题可以转化成二分图.