Documentos de Académico
Documentos de Profesional
Documentos de Cultura
DOMINGO
DEPARTAMENTO DE CIENCIAS DE LA COMPUTACIÓN - DCCO-SS
2022
Índice
1 Introducción ................................................................................................................................................ 2
2 Sistemas de Objetivos .............................................................................................................................. 2
2.1 Objetivo General: .............................................................................................................................. 2
2.2 Objetivos Específicos: ..................................................................................................................... 2
3 Desarrollo ..................................................................................................................................................... 3
4 Conclusiones ............................................................................................................................................... 5
5 Recomendación .......................................................................................................................................... 6
6 Bibliografía/ Referencias/ páginas web........................................................................................... 6
1 Introducción
Back tracking (Vuelta atrás) es una técnica de programación para hacer búsqueda
sistemática a través de todas las configuraciones posibles dentro de un espacio de
búsqueda. Para lograr esto, los algoritmos de tipo back tracking construyen posibles
soluciones candidatas de manera sistemática. En general, dado una solución candidata s:
1. Verifican si s es solución. Si lo es, hacen algo con ella (depende del problema).
2. Construyen todas las posibles extensiones de s, e invocan la mayoría de las veces
recursivamente al algoritmo con todas ellas. A veces los algoritmos de tipo back tracking
se usan para encontrar una solución, pero otras veces interesa que las revisen todas (por
ejemplo, para encontrar la más corta). Supondremos que una solución se puede modelar
como un vector 𝑎 = (𝑎1, 𝑎2 , . . . , 𝑎𝑛 ), donde cada elemento 𝑎𝑖 esta tomado de un conjunto
ordenado finito 𝑆𝑖 .
2 Sistemas de Objetivos
Solucion:
Para validar las restricciones se crearon dos funciones, una que nos permitirá validar si
dicha solución encontrada ya existe, y otra función que nos permite retorna un valor
entero correspondiente al sumatorio de una lista de enteros, esta ultima función servirá
para validar si ya hemos encontrado la solución, luego de ello se creó una función llamada
BackTracking la cual está Diseñada para llamarse asimismo hasta encontrar las
soluciones.
Funciones Validadoras:
public static int Suma(List<int> sol)
{
int sum = 0;
foreach (int item in sol)
{
sum = sum + item;
}
return sum;
}
Ejecución:
4 Conclusiones
5 Recomendación
https://classroom.google.com/u/0/c/NDEyNDQxNTExNzI1/a/NDU0NTg0NzQx
MTky/details?hl=es