本文整理汇总了C++中Graph::BreadthFirstSearch方法的典型用法代码示例。如果您正苦于以下问题:C++ Graph::BreadthFirstSearch方法的具体用法?C++ Graph::BreadthFirstSearch怎么用?C++ Graph::BreadthFirstSearch使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Graph
的用法示例。
在下文中一共展示了Graph::BreadthFirstSearch方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: main
int main(int argc, char** argv) {
Graph< Node<int>, Edge<int> > g = Graph< Node<int>, Edge<int> >(true, false, true, true);
/* Node4BFS* n[10];
for (int i = 0; i < 10; i++) {
n[i] = new Node4BFS();
n[i]->populateNode(true, true, 10);
g.insertNode(n[i]);
}
srand(time(NULL));
int nEdges = 10 * (rand() % 10);
cout<<"nEdges "<< nEdges<<"\n";
for (int i = 0; i < nEdges; i++) {
Node* node1 = n[rand() % 10];
Node* node2 = n[rand() % 10];
while (node2 == node1)
node2 = n[rand() % 10];
g.createEdge(n[rand() % 10], n[rand() % 10]);
}
*/
g.createRandomGraph(20, 0.20, true);
g.printGraph();
cout<<endl<<endl<<"BFS"<<endl;
g.BreadthFirstSearch(g.getNodeByIndex(0));
g.reset();
cout<<endl<<endl<<"DFS"<<endl;
//g.DepthFirstSearch();
g.reset();
g.topsort();
}
示例2: _tmain
int _tmain(int argc, _TCHAR* argv[])
{
string file = "adjacencyMatrix.txt";
Graph G;
G.LoadGraph(file,1);
cout<<"*********************************************************\n";
cout<<"\t\tVisit Graph\n";
cout<<"*********************************************************\n";
G.BreadthFirstSearch();
G.DepthFirstSearch();
string file2 = "weightedAdjacencyMatrix.txt";
G.LoadGraph(file2,2);
cout<<"*********************************************************\n";
cout<<"\t\tMinimum spanning tree\n";
cout<<"*********************************************************\n";
Kruskal k;
k.MSTKruskal(G.vertexNumber,G.weightedAdjacencyMatrix);
Prim p;
int startVertex = 0;
p.MSTPrim(G.vertexNumber,G.weightedAdjacencyMatrix,startVertex);
string file3 = "weightedDirectedGraph.txt";
G.LoadGraph(file3,3);
cout<<"*********************************************************\n";
cout<<"\t\tSingle-source shortest path \n";
cout<<"*********************************************************\n";
Dijkstra d;
d.SSSPDijkstra(G.vertexNumber,G.weightedDirectedAdjacencyMatrix,startVertex);
return 0;
}