Lenguajes > C / C++
backtracking
good:
la idea del backtracking es "llegar hasta el fondo" y si no es correcto, retroceder.
Un ejemplo de aplicación es la solución de un laberinto.
pero voy a poner algo más sencillo, un programa que genera todas las combinaciones de 0 y 1 de longitud n
#include <iostream>
#include <vector>
using namespace std;
typedef vector<bool> VB;
void combinaciones (VB& v, int count) {
if (count == int(v.size())) {
// imprimir el vector
for (int i = 0; i < int(v.size()); ++i) cout << v;
cout << endl;
return;
}
v[count] = true;
combinaciones(v, count+1);
v[count] = false;
combinaciones(v, count+1);
}
int main () {
int n;
cin>>n;
VB v(n);
combinaciones(v, 0);
}
Physlet:
La mejor forma para que los usuarios comprendan esta técnica, es que conozcan los grafos.
En mi caso, como no tengo tiempo para hacer estudios independientes por trabajo y demás, voy a esperarme a unas semanas en lo que entramos a dar el tema de grafos en la asignatura de Estructura de Datos.
good:
--- Cita de: Physlet en 26 de Agosto de 2011, 01:14:32 am ---La mejor forma para que los usuarios comprendan esta técnica, es que conozcan los grafos.
En mi caso, como no tengo tiempo para hacer estudios independientes por trabajo y demás, voy a esperarme a unas semanas en lo que entramos a dar el tema de grafos en la asignatura de Estructura de Datos.
--- Fin de la cita ---
si pongo un reto de búsqueda en grafos lo harás? xD
Physlet:
--- Cita de: good en 26 de Agosto de 2011, 01:25:12 am ---si pongo un reto de búsqueda en grafos lo harás? xD
--- Fin de la cita ---
Cuando comprenda grafos, sí. Esperaré a que toquen el tema en la u.
good:
--- Cita de: Physlet en 26 de Agosto de 2011, 02:34:45 am ---Cuando comprenda grafos, sí. Esperaré a que toquen el tema en la u.
--- Fin de la cita ---
lo peor es la programación dinámica, dinámicas everywhere, contar cosas everywhere. Los grafos son mas guapos xDD
Navegación
[#] Página Siguiente
Ir a la versión completa