SlideShare una empresa de Scribd logo
1 de 12
INSTITUTO UNIVERSITARIO POLITECNICO
“SANTIAGO MARIÑO”
CATEDRA: Programación No Numérica II
Enfoques
Realizado por:
TenjoV. Jhoan M
C.I: 20326602
Porlamar, Julio del 2014
(Tail Recursion) o Método de ir hacia adelante
La recursividad es una técnica de programación que consiste en que una serie de instrucciones se
repiten como una sub tarea de la tarea principal, es decir, las funciones, procesos o rutinas se llaman a sí
mismos cada vez que lo requieran y se ejecutan repetidas veces hasta que se satisface una condición
específica.
Sin embargo, la recursividad en algunos casos, tiene un costo computacional alto, debido a las constantes
llamadas a la misma función, rutina y muchas veces estas llamadas consumen demasiada memoria.
En algunos algoritmos recursivos, se puede implementar un caso de recursividad especial llamado Tail
recursión (recursividad por cola), la cual es una técnica para optimizar la recursividad eliminando las
constantes llamadas recursivas. Tail recursion es cuando la llamada recursiva es la última instrucción de la
función.
Sin embargo, las funciones tail recursive deben cumplir la condición que en la parte que realiza la llamada
a la función, no debe existir ninguna otra sentencia.
Una ventaja de la recursividad por cola es que podemos evitar la sobrecarga de cada llamada a la
función y nos evitamos el gasto de memoria de pila. Con una función tail recursive se puede evitar lo que
se conoce como stack overflow, que ocurre cuando la pila de llamadas (call stack) consume mucha
memoria.
Veamos esta técnica con un ejemplo muy conocido que es encontrar el factorial de un número.
Esta simple función obtiene el factorial de un número de la manera recursiva convencional: La explicación
es sencilla, llamamos a la misma función fact hasta que n sea igual a 1, en ese momento la recursividad
se detiene.
Esta simple función obtiene el factorial de un número de la manera recursiva convencional: La explicación
es sencilla, llamamos a la misma función fact hasta que n sea igual a 1, en ese momento la recursividad se detiene.
Digamos que ingresé 15, si compilamos el programa la función me daría 2004310016, lo cual es correcto, pero hay que
tener en cuenta todas las llamadas recursivas que hizo la función fact_recursivo, es decir, la función tiene que calcular
el factorial de 14 y este el fact de 13, y este el fact de 12… sucesivamente hasta 1. Tenemos un crecimiento del
número de llamadas recursivas.
Ahora vamos a realizar la misma función usando tail recursion. En este caso no se necesita guardar un
marco de pila para cada llamada recursiva, y el algoritmo se comporta como si fuera iterativo.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int fact_recursivo(int n)
{
if(n == 1)
return n;
else
return n * fact_recursivo(n-1);
}
int main() {
int num = 0;
cout << "Ingresa un nro " << endl; cin
>> num;
cout << "Su factorial es " <<
fact_recursivo(num);
return 0;
}
(Backtracking) o Método de ir hacia atrás
Backtracking o método de ir hacia atrás se asemeja a un recorrido en
profundidad dentro de un grafo dirigido.
La técnica crea todas las posibles combinaciones de elementos para
obtener una solución. Su principal virtud es que en la mayoría de las
implementaciones se puede evitar combinaciones, estableciendo funciones
de acotación reduciendo el tiempo de ejecución. El backtracking esta muy
relacionado con la búsqueda combinatoria.
La idea es encontrar la mejor combinación posible, por esto se puede
decir que es una búsqueda en profundidad, durante la búsqueda: Si se
encuentra con una alternativa incorrecta la búsqueda retrocede al punto
anterior y toma la siguiente alternativa. Cuando se terminan las posibilidades,
se vuelve a la elección anterior y se toma la siguiente opción
ejemplo
tomar es el de encontrar la salida en un laberinto. ¿Por qué podemos tomarlo como ejemplo? Por que
un laberinto puede comportarse como un grafo, donde cada cruce puede ser un nodo donde
debemos tomar una decisión que conducen a otros nodos.
o Si la posición actual está fuera del laberinto, devolverTRUE para indicar que hemos encontrado
una solución.
o Si la posición actual está marcada, devolver FALSE para indicar que ya habíamos estado aquí.
o Marcar la posición actual.
Para cada una de las 4 direcciones posibles (N,S,E,O){
Si (en la dirección elegida no chocamos contra un muro) {
Moverse un paso en la dirección indicada
Intentar resolver el laberinto desde ahí recursivamente.
Si la llamada recursiva nos permite salir del laberinto, devolverTRUE
}
}
Quitar la marca de la posición actual. Devolver FALSE para indicar que ninguna de las 4 direcciones
nos permitió llegar a una solución desde la posición actual
Dirección Norte.. No podemos ir al sur.
Buscando soluciones
Giramos al oeste.. momento de hacer backtracking
Buscando soluciones
Volvemos al punto de partida.. pero ahora cogemos rumbo al sur
Buscando soluciones
solución
Salida Encontrada
Problema de las N Reinas
El problema de las reinas consistente en colocar N reinas en un tablero de dimensiones N por N de forma que no se
encuentren más de una en la misma línea: horizontal, vertical o diagonal
Enunciado: colocar N Reinas en un tablero rectangular de dimensiones N por N de Forma que no se encuentren mas
de una en la misma línea: horizontal, vertical o diagonal
Conclusión
El manejo de algoritmos tomando en cuenta el método de ir hacia adelante aporta cierto interés
con el termillo llamado recursivo, mas que todo se especializa en eliminar capas de una maneras por
decirlo así ya que con el hecho de eliminar e implementar una nueva estructura de algoritmo se cumple
la condición que se requiere.Y es que por esa razón se determina un valor a la solución.
Sin embargo el método de ir hacia atrás conocí y estudie el ejemplo tomado. dice: recorrer y
encontrar soluciones. Esta también puede llamarse una toma de decisiones porque cada vez que se elige
una acción a realizar se juzga el paso que se da y no se garantiza una solución en ese momento, es por
ello que consta de pasos indeterminados para llegar a la solución.
Para llegar al punto del problema de las N Reinas determine que puede tomarse como un juego el
especifico y que puede ser practico a la vez, como también tiene cierto parecido al sudoku. Como se
representa como un algoritmo tiende a ser mas exacto y tiende hacer mas exacto con su representación
de códigos.
Referencias Electrónicas
http://www.slideshare.net/Joamarbet/enfoques-37144008
http://en.wikipedia.org/wiki/Tail_recursion#Implementation_methods
Https://www.princeton.edu/~achaney/tmve/wiki100k/docs/Tail_recursion.html
http://www.inf.ucv.cl/~wpalma/taller/backtracking.pdf
http://www.glc.us.es/~jalonso/vestigium/i1m2011-los-problemas-de-las-n-
reinas-y-de-hamming-en-haskell/

Más contenido relacionado

La actualidad más candente

Sentencias de Repeticion
Sentencias de RepeticionSentencias de Repeticion
Sentencias de Repeticion
Kenyi Figueroa
 
Estructuras De RepeticióN
Estructuras De RepeticióNEstructuras De RepeticióN
Estructuras De RepeticióN
Regina Flores
 
Estructuras de repeticion
Estructuras de repeticion Estructuras de repeticion
Estructuras de repeticion
abmendo28
 
Esquema algorítmico del backtracking
Esquema algorítmico del  backtrackingEsquema algorítmico del  backtracking
Esquema algorítmico del backtracking
Wilmer Quintero
 
U1 Analisis Algoritmos Complejidad
U1 Analisis Algoritmos ComplejidadU1 Analisis Algoritmos Complejidad
U1 Analisis Algoritmos Complejidad
rezzaca
 
Estructura cíclicas o de repetición en la programación
Estructura cíclicas o de repetición en la programaciónEstructura cíclicas o de repetición en la programación
Estructura cíclicas o de repetición en la programación
pandora_2012
 

La actualidad más candente (20)

Estructura repetitiva for y while
Estructura repetitiva for y whileEstructura repetitiva for y while
Estructura repetitiva for y while
 
Estructuras iterativas en java y pseudocódigo
Estructuras iterativas en java y pseudocódigoEstructuras iterativas en java y pseudocódigo
Estructuras iterativas en java y pseudocódigo
 
Tema ii integrales uney
Tema ii integrales uneyTema ii integrales uney
Tema ii integrales uney
 
Sentencias de Repeticion
Sentencias de RepeticionSentencias de Repeticion
Sentencias de Repeticion
 
Modulo2b
Modulo2bModulo2b
Modulo2b
 
Estructuras De RepeticióN
Estructuras De RepeticióNEstructuras De RepeticióN
Estructuras De RepeticióN
 
Estructuras de repeticion
Estructuras de repeticion Estructuras de repeticion
Estructuras de repeticion
 
Estructuras básicas tecnología
Estructuras básicas tecnología  Estructuras básicas tecnología
Estructuras básicas tecnología
 
Bucles de Control Repetitivo Ciclos For
Bucles de Control Repetitivo  Ciclos ForBucles de Control Repetitivo  Ciclos For
Bucles de Control Repetitivo Ciclos For
 
Estructuras repetitivas(while, for, repeat)
Estructuras repetitivas(while, for, repeat)Estructuras repetitivas(while, for, repeat)
Estructuras repetitivas(while, for, repeat)
 
Estructura selectiva
Estructura selectivaEstructura selectiva
Estructura selectiva
 
Esquema algorítmico del backtracking
Esquema algorítmico del  backtrackingEsquema algorítmico del  backtracking
Esquema algorítmico del backtracking
 
2 teoria de_probabilidades
2 teoria de_probabilidades2 teoria de_probabilidades
2 teoria de_probabilidades
 
Estructura repetitiva for y while
Estructura repetitiva for y whileEstructura repetitiva for y while
Estructura repetitiva for y while
 
7 procesos estocásticos
7 procesos estocásticos7 procesos estocásticos
7 procesos estocásticos
 
Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...
Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...
Diagramas de flujo - Estructuras de Control (For, While, Do Whille y Switch C...
 
Teoría De La Complejidad Algoritmica
Teoría De La Complejidad AlgoritmicaTeoría De La Complejidad Algoritmica
Teoría De La Complejidad Algoritmica
 
U1 Analisis Algoritmos Complejidad
U1 Analisis Algoritmos ComplejidadU1 Analisis Algoritmos Complejidad
U1 Analisis Algoritmos Complejidad
 
Estructura cíclicas o de repetición en la programación
Estructura cíclicas o de repetición en la programaciónEstructura cíclicas o de repetición en la programación
Estructura cíclicas o de repetición en la programación
 
Presentacion ciclos-1
Presentacion ciclos-1Presentacion ciclos-1
Presentacion ciclos-1
 

Destacado (8)

Enfoques
EnfoquesEnfoques
Enfoques
 
Problema de la mochila
Problema de la mochilaProblema de la mochila
Problema de la mochila
 
Mapa Conceptual Joseanny Bolivar
Mapa Conceptual Joseanny BolivarMapa Conceptual Joseanny Bolivar
Mapa Conceptual Joseanny Bolivar
 
Problema de la mochila
Problema de la mochilaProblema de la mochila
Problema de la mochila
 
Cuadro De Mando Integral ¿Como hago una implantacion adecuada?
Cuadro De Mando Integral  ¿Como hago una implantacion adecuada?Cuadro De Mando Integral  ¿Como hago una implantacion adecuada?
Cuadro De Mando Integral ¿Como hago una implantacion adecuada?
 
El Balance Scorecard ó BSC
El Balance Scorecard ó BSCEl Balance Scorecard ó BSC
El Balance Scorecard ó BSC
 
problema de la mochila materia virtual
problema de la mochila materia virtualproblema de la mochila materia virtual
problema de la mochila materia virtual
 
Peti Metodologia
Peti MetodologiaPeti Metodologia
Peti Metodologia
 

Similar a Enfoques (20)

recursividad.pptx
recursividad.pptxrecursividad.pptx
recursividad.pptx
 
recursividad EN PROGRAMACION ORIENTADA .pptx
recursividad EN PROGRAMACION ORIENTADA .pptxrecursividad EN PROGRAMACION ORIENTADA .pptx
recursividad EN PROGRAMACION ORIENTADA .pptx
 
Busqueda por backtracking
Busqueda por backtrackingBusqueda por backtracking
Busqueda por backtracking
 
Recursividad 100329105433-phpapp01
Recursividad 100329105433-phpapp01Recursividad 100329105433-phpapp01
Recursividad 100329105433-phpapp01
 
Recursividad
RecursividadRecursividad
Recursividad
 
Recursividad Con C#
Recursividad Con C#Recursividad Con C#
Recursividad Con C#
 
Recursividad
RecursividadRecursividad
Recursividad
 
Esquema algorítmico del backtracking
Esquema algorítmico del  backtrackingEsquema algorítmico del  backtracking
Esquema algorítmico del backtracking
 
Backtracking (Método de Vuelta Atrás)
Backtracking (Método de Vuelta Atrás)Backtracking (Método de Vuelta Atrás)
Backtracking (Método de Vuelta Atrás)
 
2. Recursividad
2. Recursividad2. Recursividad
2. Recursividad
 
Transformada inversa
Transformada inversaTransformada inversa
Transformada inversa
 
Romero
RomeroRomero
Romero
 
03 tda1 t2018
03 tda1 t201803 tda1 t2018
03 tda1 t2018
 
MATEMATICAS IV
MATEMATICAS IVMATEMATICAS IV
MATEMATICAS IV
 
Recursividad
RecursividadRecursividad
Recursividad
 
Recursividad
RecursividadRecursividad
Recursividad
 
Enfoques
EnfoquesEnfoques
Enfoques
 
clase1_TecDiseño_2021.ppsx
clase1_TecDiseño_2021.ppsxclase1_TecDiseño_2021.ppsx
clase1_TecDiseño_2021.ppsx
 
Recursión
RecursiónRecursión
Recursión
 
Unidad 2 p1
Unidad 2 p1Unidad 2 p1
Unidad 2 p1
 

Último

NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptxNTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptx
BRAYANJOSEPTSANJINEZ
 

Último (20)

Ejemplos aplicados de flip flops para la ingenieria
Ejemplos aplicados de flip flops para la ingenieriaEjemplos aplicados de flip flops para la ingenieria
Ejemplos aplicados de flip flops para la ingenieria
 
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHTAPORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
APORTES A LA ARQUITECTURA DE WALTER GROPIUS Y FRANK LLOYD WRIGHT
 
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptxNTP- Determinación de Cloruros  en suelos y agregados (1) (1).pptx
NTP- Determinación de Cloruros en suelos y agregados (1) (1).pptx
 
UNIDAD II 2.pdf ingenieria civil lima upn
UNIDAD  II 2.pdf ingenieria civil lima upnUNIDAD  II 2.pdf ingenieria civil lima upn
UNIDAD II 2.pdf ingenieria civil lima upn
 
Six Sigma Process and the dmaic metodo process
Six Sigma Process and the dmaic metodo processSix Sigma Process and the dmaic metodo process
Six Sigma Process and the dmaic metodo process
 
2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologica2. Cristaloquimica. ingenieria geologica
2. Cristaloquimica. ingenieria geologica
 
27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt27311861-Cuencas-sedimentarias-en-Colombia.ppt
27311861-Cuencas-sedimentarias-en-Colombia.ppt
 
Herramientas de la productividad - Revit
Herramientas de la productividad - RevitHerramientas de la productividad - Revit
Herramientas de la productividad - Revit
 
ATS-FORMATO cara.pdf PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf  PARA TRABAJO SEGUROATS-FORMATO cara.pdf  PARA TRABAJO SEGURO
ATS-FORMATO cara.pdf PARA TRABAJO SEGURO
 
Estadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico EcuatorianoEstadística Anual y Multianual del Sector Eléctrico Ecuatoriano
Estadística Anual y Multianual del Sector Eléctrico Ecuatoriano
 
Controladores Lógicos Programables Usos y Ventajas
Controladores Lógicos Programables Usos y VentajasControladores Lógicos Programables Usos y Ventajas
Controladores Lógicos Programables Usos y Ventajas
 
Gestion de proyectos para el control y seguimiento
Gestion de proyectos para el control  y seguimientoGestion de proyectos para el control  y seguimiento
Gestion de proyectos para el control y seguimiento
 
QUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERU
QUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERUQUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERU
QUIMICA GENERAL UNIVERSIDAD TECNOLOGICA DEL PERU
 
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.pptTippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
Tippens fisica 7eDIAPOSITIVAS TIPENS Tippens_fisica_7e_diapositivas_33.ppt
 
Propuesta para la creación de un Centro de Innovación para la Refundación ...
Propuesta para la creación de un Centro de Innovación para la Refundación ...Propuesta para la creación de un Centro de Innovación para la Refundación ...
Propuesta para la creación de un Centro de Innovación para la Refundación ...
 
Aportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der RoheAportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
Aportes a la Arquitectura de Le Corbusier y Mies Van der Rohe
 
Sistema de lubricación para motores de combustión interna
Sistema de lubricación para motores de combustión internaSistema de lubricación para motores de combustión interna
Sistema de lubricación para motores de combustión interna
 
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJODIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
DIAPOSITIVAS DE SEGURIDAD Y SALUD EN EL TRABAJO
 
CALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptxCALCULO DE ENGRANAJES RECTOS SB-2024.pptx
CALCULO DE ENGRANAJES RECTOS SB-2024.pptx
 
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
01 MATERIALES AERONAUTICOS VARIOS clase 1.ppt
 

Enfoques

  • 1. INSTITUTO UNIVERSITARIO POLITECNICO “SANTIAGO MARIÑO” CATEDRA: Programación No Numérica II Enfoques Realizado por: TenjoV. Jhoan M C.I: 20326602 Porlamar, Julio del 2014
  • 2. (Tail Recursion) o Método de ir hacia adelante La recursividad es una técnica de programación que consiste en que una serie de instrucciones se repiten como una sub tarea de la tarea principal, es decir, las funciones, procesos o rutinas se llaman a sí mismos cada vez que lo requieran y se ejecutan repetidas veces hasta que se satisface una condición específica. Sin embargo, la recursividad en algunos casos, tiene un costo computacional alto, debido a las constantes llamadas a la misma función, rutina y muchas veces estas llamadas consumen demasiada memoria. En algunos algoritmos recursivos, se puede implementar un caso de recursividad especial llamado Tail recursión (recursividad por cola), la cual es una técnica para optimizar la recursividad eliminando las constantes llamadas recursivas. Tail recursion es cuando la llamada recursiva es la última instrucción de la función. Sin embargo, las funciones tail recursive deben cumplir la condición que en la parte que realiza la llamada a la función, no debe existir ninguna otra sentencia. Una ventaja de la recursividad por cola es que podemos evitar la sobrecarga de cada llamada a la función y nos evitamos el gasto de memoria de pila. Con una función tail recursive se puede evitar lo que se conoce como stack overflow, que ocurre cuando la pila de llamadas (call stack) consume mucha memoria.
  • 3. Veamos esta técnica con un ejemplo muy conocido que es encontrar el factorial de un número. Esta simple función obtiene el factorial de un número de la manera recursiva convencional: La explicación es sencilla, llamamos a la misma función fact hasta que n sea igual a 1, en ese momento la recursividad se detiene. Esta simple función obtiene el factorial de un número de la manera recursiva convencional: La explicación es sencilla, llamamos a la misma función fact hasta que n sea igual a 1, en ese momento la recursividad se detiene. Digamos que ingresé 15, si compilamos el programa la función me daría 2004310016, lo cual es correcto, pero hay que tener en cuenta todas las llamadas recursivas que hizo la función fact_recursivo, es decir, la función tiene que calcular el factorial de 14 y este el fact de 13, y este el fact de 12… sucesivamente hasta 1. Tenemos un crecimiento del número de llamadas recursivas. Ahora vamos a realizar la misma función usando tail recursion. En este caso no se necesita guardar un marco de pila para cada llamada recursiva, y el algoritmo se comporta como si fuera iterativo. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 int fact_recursivo(int n) { if(n == 1) return n; else return n * fact_recursivo(n-1); } int main() { int num = 0; cout << "Ingresa un nro " << endl; cin >> num; cout << "Su factorial es " << fact_recursivo(num); return 0; }
  • 4. (Backtracking) o Método de ir hacia atrás Backtracking o método de ir hacia atrás se asemeja a un recorrido en profundidad dentro de un grafo dirigido. La técnica crea todas las posibles combinaciones de elementos para obtener una solución. Su principal virtud es que en la mayoría de las implementaciones se puede evitar combinaciones, estableciendo funciones de acotación reduciendo el tiempo de ejecución. El backtracking esta muy relacionado con la búsqueda combinatoria. La idea es encontrar la mejor combinación posible, por esto se puede decir que es una búsqueda en profundidad, durante la búsqueda: Si se encuentra con una alternativa incorrecta la búsqueda retrocede al punto anterior y toma la siguiente alternativa. Cuando se terminan las posibilidades, se vuelve a la elección anterior y se toma la siguiente opción
  • 5. ejemplo tomar es el de encontrar la salida en un laberinto. ¿Por qué podemos tomarlo como ejemplo? Por que un laberinto puede comportarse como un grafo, donde cada cruce puede ser un nodo donde debemos tomar una decisión que conducen a otros nodos. o Si la posición actual está fuera del laberinto, devolverTRUE para indicar que hemos encontrado una solución. o Si la posición actual está marcada, devolver FALSE para indicar que ya habíamos estado aquí. o Marcar la posición actual. Para cada una de las 4 direcciones posibles (N,S,E,O){ Si (en la dirección elegida no chocamos contra un muro) { Moverse un paso en la dirección indicada Intentar resolver el laberinto desde ahí recursivamente. Si la llamada recursiva nos permite salir del laberinto, devolverTRUE } } Quitar la marca de la posición actual. Devolver FALSE para indicar que ninguna de las 4 direcciones nos permitió llegar a una solución desde la posición actual
  • 6. Dirección Norte.. No podemos ir al sur. Buscando soluciones
  • 7. Giramos al oeste.. momento de hacer backtracking Buscando soluciones
  • 8. Volvemos al punto de partida.. pero ahora cogemos rumbo al sur Buscando soluciones
  • 10. Problema de las N Reinas El problema de las reinas consistente en colocar N reinas en un tablero de dimensiones N por N de forma que no se encuentren más de una en la misma línea: horizontal, vertical o diagonal Enunciado: colocar N Reinas en un tablero rectangular de dimensiones N por N de Forma que no se encuentren mas de una en la misma línea: horizontal, vertical o diagonal
  • 11. Conclusión El manejo de algoritmos tomando en cuenta el método de ir hacia adelante aporta cierto interés con el termillo llamado recursivo, mas que todo se especializa en eliminar capas de una maneras por decirlo así ya que con el hecho de eliminar e implementar una nueva estructura de algoritmo se cumple la condición que se requiere.Y es que por esa razón se determina un valor a la solución. Sin embargo el método de ir hacia atrás conocí y estudie el ejemplo tomado. dice: recorrer y encontrar soluciones. Esta también puede llamarse una toma de decisiones porque cada vez que se elige una acción a realizar se juzga el paso que se da y no se garantiza una solución en ese momento, es por ello que consta de pasos indeterminados para llegar a la solución. Para llegar al punto del problema de las N Reinas determine que puede tomarse como un juego el especifico y que puede ser practico a la vez, como también tiene cierto parecido al sudoku. Como se representa como un algoritmo tiende a ser mas exacto y tiende hacer mas exacto con su representación de códigos.