Hola a todos!
Necesitaba saber como enlazar nodos con listas enlazadas simples. Si alguien me podria explicar se los agradeceria ya que tengo que enlazar 81 O.o
Esto realizando un sudoku.
De antemano, muchas gracias.
Buenas es un poco follón tener que explicar escribiendolo, así que si te parece te dejo el código que hice el año pasado y si tienes alguna duda te lo intento contestar. Lo hice el año pasado al volver de fiesta así que no me acuerdo si funcionaba todo pero en general funciona.
https://www.dropbox.com/s/x4i6guhkf30e9be/listaEnlazada%20sin%20iteradores.h?dl=0
Solo por preguntar y por curiosidad:
¿Como utilizarás la lista enlazada simple en un Sudoku? ¿Backtracking? ¿Ramificación y poda?
Te recuerdo que el problema de la solución del Sudoku es NP-Completo
Salu2s
Hola, ni yo misma tengo idea. Es un proyecto que me han dejado de tarea y la verdad no se ni por donde empezar.
Si quieres representar el tablero, lo más fácil es
char tablero[9][9];
Si, lo se. Creeme que quise hacerlo con arreglo, seria mas sencillo. LE punto es que se me exige usar una lista enlazada, lo cual no le encuentro el sentido. No sabria como enlazar los 81 nodos.
en serio si me ayudan se los agradeceria.
Puedes hacer algo como un arreglo, pero con una lista.
Haz una lista de listas. ¿Eso vale?
Uhmm como haria eso?
Averigue que esto se puede realizar con dos ciclos for. No se que tan bien saldra.
Lista< Lista<char> > l;
for(int i=0; i<9; i++){
l.push_back(Lista<char>());
for(int j=0; j<9; j++)
l.back().push_back(0);
}
Algo así. Depende de si lo haces en C, o en C++ orientado a objetos. Pero el concepto es ese. Es casi lo mismo que inicializar una matriz dinámica.