根据
The Algorithm Design Manual
教科书,我们可以用
GOBLIN
许多图算法的库。现在我试着用
Maximum Flow solver
我研究的地精项目。然而,我很难找到一个如何做到这一点的例子。首先,我不知道如何创建图表。根据文件,
http://goblin2.sourceforge.net/refman/tutorialConstruction.html#secPlainConstruction
,当我创建下面的cpp文件()时,它会将TNode识别为一个类型,但不识别“graph”类型。谢谢你的帮助。
#include <iostream>
#include <fstream>
#include <time.h>
#include <math.h>
#include <vector>
#include <random>
#include <algorithm>
#include <iomanip>
#include <string>
#include <stdlib.h>
#include <deque>
#include <ilcplex/ilocplex.h>
#include <goblin.h>
// #include <abstractMixedGraph.h>
using namespace std ;
int main()
{
cout.precision ( 1 ) ;
cout << fixed ;
////////////////////////////
graph G(TNode(0));
TNode** subset = new TNode*[cardinality];
for (TNode i=0;i<cardinality;++i) {
subset[i] = new TNode[cardinality];
for (TNode j=i+1;j<cardinality;++j) {
subset[i][j] = G.InsertNode();
for (TNode k=0 ;k<i;++k) G.InsertArc(subset[i][j],subset[k][j]);
for (TNode k=i+1;k<j;++k) G.InsertArc(subset[i][j],subset[i][k]);
for (TNode k=0 ;k<i;++k) G.InsertArc(subset[i][j],subset[k][i]);
}
}
for (TNode i=0;i<cardinality;++i) delete[] subset[i];
delete[] subset;
return 0 ;
}