int main() { ofstream outfile("output.txt"); if(!outfile) { cout << "File generation failed"; } else { Heap *heap = new Heap; Set *set = new Set; heap->size = 0; ReadIn(heap); cout <<"\n"; initializeSet(heap->nV, set); Kruskal(heap->nV, set, heap->nE, heap,outfile); } outfile.close(); }
int main() { int i; while (~scanf("%d %d", &N, &M)) { for (i=1; i<=N; ++i) // Init hub[i] = i; for (i=0; i<M; ++i) scanf("%d %d %d", &edge[i].u, &edge[i].v, &edge[i].w); qsort(edge, M, sizeof(edge[0]), compare); //printf("-----------------------\n"); //for (i=0; i<M; ++i) printf("%d %d %d\n", edge[i].u, edge[i].v, edge[i].w); Kruskal(); }// End of while return 0; }
int main(int argc, char* argv[]) { int i,j,t; char s[10]; while(scanf("%d",&n),n) { maxlinks=0; for(i=1;i<n;i++) { scanf("%s%d",s,&j); while(j--) { scanf("%s%d",s,&links[maxlinks].length); links[maxlinks].point1=i; links[maxlinks].point2=*s-64; maxlinks++; } } printf("%d\n",Kruskal()); } return 0; }
int main() { int i, a, b, c, tag; while (~scanf("%d", &NCity), NCity!=0) { for (i=0; i<=NCity; ++i) city[i] = i; M = NCity*(NCity-1)/2; for (i=0; i<M; ++i) { scanf("%d %d %d %d", &a, &b, &c, &tag); if (tag == 0) edge[i].u=a, edge[i].v=b, edge[i].w=c; else edge[i].u=a, edge[i].v=b, edge[i].w=0; }// preprocess qsort(edge, M, sizeof(edge[0]), compare); printf("%d\n", Kruskal()); }// End of while return 0; }
int main(int argc, char **argv){ if(argc != 3){ usage(argv[0]); exit(EXIT_FAILURE); } std::ifstream fin; fin.open(argv[1]); if(!fin.good()){ std::cerr << argv[0] << ": "; perror(argv[1]); exit(EXIT_FAILURE); } std::ofstream fout; fout.open(argv[2]); if(!fout.good()){ std::cerr << argv[0] << ": "; perror(argv[2]); exit(EXIT_FAILURE); } /*** parse file and create graph ***/ int nGraphs, nVertices, nEdges;//, v1, v2 , weight; fin >> nGraphs; fout << "There are " << nGraphs << " graphs in " << argv[1] << std::endl; for(int i = 0; i < nGraphs; i++){ // build graph fin >> nVertices; fin >> nEdges; Graph graph(nVertices); for(int e = 0; e < nEdges; e++){ Edge edge; fin >> edge; if(DEBUG) std::cerr << "received edge: " << edge << std::endl; graph.insertEdge(edge); } if(DEBUG){ std::cerr << graph.numVertices() << " vertices, " << graph.numEdges() << " edges" << std::endl; graph.showEdges(); graph.showAdj(false); } // run algorithms and time Graph kruskal_mst(nVertices); Timer kruskal_timer; kruskal_timer.start(); Kruskal(graph, kruskal_mst); kruskal_timer.end(); Graph prim_mst(nVertices); Timer prim_timer; prim_timer.start(); Prim(graph, prim_mst); prim_timer.end(); Graph fib_mst(nVertices); Timer fib_timer; fib_timer.start(); Fib(graph, fib_mst); fib_timer.end(); // report timings fout << "Graph " << i+1 << ": " << nVertices << " vertices, " << nEdges << " edges" << std::endl; fout << "Kruskal: "; kruskal_timer.printElapsedSeconds(fout); if(DEBUG){ std::cerr << "Kruskal MST:" << std::endl; kruskal_mst.showEdges(); kruskal_mst.printEdges(fout); fout << "\tKRUSKALS: SUM OF EDGES = " << kruskal_mst.sumEdges() << std::endl;// " numEdges=" << kruskal_mst.numEdges() << std::endl; } fout << "Prim: "; prim_timer.printElapsedSeconds(fout); extractMST(prim_mst); if(DEBUG){ std::cerr << "Prim MST:" << std::endl; prim_mst.showEdges(); prim_mst.printEdges(fout); fout << "\tPRIMS: SUM OF EDGES = " << prim_mst.sumEdges() << std::endl;//" numEdges=" << prim_mst.numEdges() << std::endl; } fout << "Fib Heap: "; fib_timer.printElapsedSeconds(fout); extractMST(fib_mst); if(DEBUG){ std::cerr << "Fib MST:" << std::endl; fib_mst.showEdges(); fib_mst.printEdges(fout); fout << "\tFIB-HEAP: SUM OF EDGES = " << fib_mst.sumEdges() << std::endl;// << " numEdges=" << fib_mst.numEdges() << std::endl; } } return 0; }
#include "mainwindow.h" #include "ui_mainwindow.h" #include "nodo.h" #include "dijkstra.h" #include "floyd.h" #include "kruskal.h" #include "QComboBox" #include "QLabel" #include "QString" QLabel * label; Dijkstra dijkstra = Dijkstra(); Floyd floyd = Floyd(); Kruskal kruskal = Kruskal(); MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); setWindowTitle("Map Path Simulator"); ui->mapa->setPixmap(QPixmap(":/Images/mapa.png")); layout = new QVBoxLayout(this); //for(int i = 0; i < 54; i++) //{ //label = new QLabel("hola"); //QString hola; //hola.append("hola"); //label->setText(hola); //layout->addWidget(label); //}