【问题标题】:How to find the different nodes in two similar graph如何在两个相似图中找到不同的节点
【发布时间】:2016-07-08 09:56:19
【问题描述】:

我有两个图,每个图中的节点可能具有相同或不同的值。两张图的大部分部分是相同的。只有少数节点被添加、删除或修改。我想知道是否有任何算法可以找到这些节点。或者,至少,找到一组包含这些节点的节点。

【问题讨论】:

  • This 可能会给你一些建议。

标签: graph diff


【解决方案1】:

如果您的图形类有一个它包含的节点列表,那么这可能会起作用:

public bool FindGrNodes (GraphClassName gr2) { foreach(nameoflist1 中的 GrNodeClassName nd1) foreach(nameoflist2 中的 GrNodeClassName nd2) if (nd1.value==nd2.value)返回真;

返回假; }

大 O'Notation 是 O (n^2)

【讨论】:

  • 另外,如果你想要这些图的相似节点的列表,你应该改变列表类型(节点)的方法类型。在方法中新建一个列表,将“return true”替换为“listname.Add(nd1)。循环结束后,返回列表
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-04
  • 1970-01-01
  • 2011-03-31
相关资源
最近更新 更多