コード例 #1
0
ファイル: greedy.cpp プロジェクト: lautaroalvarez/facultad
coloreo greedy_secuencial_1aN(grafo& g) {
	coloreo c(g, -1);
	vector<int> nodos(g.n());
	iota(nodos.begin(), nodos.end(), 0);
	c.colorear_secuencial(nodos);
	return c;
}
コード例 #2
0
ファイル: greedy.cpp プロジェクト: lautaroalvarez/facultad
coloreo greedy_random(grafo& g) {
	vector<int> nodos(g.n());
	iota(nodos.begin(), nodos.end(), 0);
	random_shuffle(nodos.begin(), nodos.end());
	coloreo c(g, -1);
	c.colorear_secuencial(nodos);
	return c;
}
コード例 #3
0
// Genera un grafo completo de n nodos.
vector<nodo> k(int n) {
    vector<nodo> nodos(n);
    for(int i = 0; i < n; i++) {
        nodos[i].indice = i;
        for(int j = 0; j < n; j++) {
            if(j != i) nodos[i].adyacentes.insert(j);
        }
    }
    return nodos;
}
コード例 #4
0
// Genera grafo bipartito completo
vector<nodo> knm(int n, int m) {
    vector<nodo> nodos(n + m);
    // Índices correspondientes
    for (int i = 0; i < n + m; ++i) {
        nodos[i].indice = i;
    }

    //Nodos adyacencias para bipartito completo
    for (int i = 0; i < n; ++i) {
        for (int j = n; j < n + m; ++j) {
            nodos[i].adyacentes.insert(j);
            nodos[j].adyacentes.insert(i);
        }
    }
    return nodos;
}