La Web del Programador: Comunidad de Programadores
 
    Pregunta:  24554 - ¿EN QUé CONSISTE LA TéCNICA DE BACKTRACKING?
Autor:  Grupo Proyectos
Gracias, cordial saludo.

Quisiéramos informarnos más sobre la técnica de Backtracking y su uso en C.

  Respuesta:  Luis Machuca
El Backtracking quiere decir literalmente "seguimiento de retroceso". Esto consiste en ir guardado cada cierto tiempo, digamos "T", el estado del programa (los valores de las variables, etc). A este conjunto de valores le llamamos V(T).

El Backtracking consiste principalmente en que al llegar a un instante determinado T1, guardamos el estado del programa en V(T1), y al llegar a un instante T2,queremos recuperar la información, por ejemplo para "deshacer" una acción como lo hace WIndows. Entonces tenemos que tomar los datos del programa y sustituirlos por la información contenida en V(T1).

En realidad yo no sé mucho de esto y a los puristas esta definición les parece muy poco completa y muy poco formal pero a grandes rasgos de eso se trata, estando en un instante, recuperar variables o datos de un instante anterior.

Esto tiene aplicación en los videojuegos, en las aplicaciones conversacionales, y especialmente la saplicaciones que trabajan con menús y gran cantidad de archivos.

Para manejar esta técnica entran otros conceptos de la Informática como son las pilas(stacks), colas(queues), árboles(trees), y esencialmente los conceptos de algoritmos.

Espero que esto les sirva para poder empezar.