本文整理汇总了C#中AdjacencyGraph类的典型用法代码示例。如果您正苦于以下问题:C#AdjacencyGraph类的具体用法?C#AdjacencyGraph怎么用?C#AdjacencyGraph使用的例子?这里精选的类代码示例或许可以为您提供帮助。
示例1:FindAllPatterns
///
///Przerabiagrafnastringzodnalezionymipaternami
///
///
///
publicstringFindAllPatterns(AdjacencyGraph>g)
{
boolnodesStillInGraph=true;
while(nodesStillInGraph)
{
vardecisionNodes=g.Vertices.Where(x=>x.Type==NodeType.DecisionNode).ToList();
varforkNodes=g.Vertices.Where(x=>x.Type==NodeType.ForkNode).ToList();
if(decisionNodes.Count==0&&forkNodes.Count==0)
{
nodesStillInGraph=false;
continue;
}
g=FindLoopPattern(g);
g=FindSeqPattern(g);
g=FindDecisionPattern(g);
g=FindSeqPattern(g);
g=FindParPattern(g);
g=FindSeqPattern(g);
}
if(g.Vertices.Count()==3&&g.Edges.Count()==2)
{
varstart=g.Vertices.Where(x=>x.Type==NodeType.InitalNode).ToList().FirstOrDefault();
varend=g.Vertices.Where(x=>x.Type==NodeType.ActivityFinalNode).ToList().FirstOrDefault();
varbody=g.Vertices.Where(x=>x!=start&&x!=end).ToList().FirstOrDefault();
return"seqseq("+start.Name+","+body.Name+","+end.Name+")";
}
return"ERROR";
}
原文链接:http://www.jxszl.com/biancheng/C/556485.html