Retrocediendo | Introducción

Requisitos previos :  recursividad Análisis de Complejidad retrocediendoes una técnica algorítmica para resolver problemas recursivamente al tratar de construir una solución de forma incremental, una pieza a la vez, eliminando aquellas soluciones que no satisfacen las restricciones del problema en cualquier punto en el tiempo (por tiempo, aquí, se hace referencia al tiempo transcurrido hasta … Continue reading «Retrocediendo | Introducción»

Boggle (Encuentra todas las palabras posibles en un tablero de personajes) | Serie 1

Dado un diccionario, un método para realizar búsquedas en el diccionario y un tablero M x N donde cada celda tiene un carácter. Encuentra todas las palabras posibles que pueden estar formadas por una secuencia de caracteres adyacentes. Tenga en cuenta que podemos movernos a cualquiera de los 8 caracteres adyacentes, pero una palabra no … Continue reading «Boggle (Encuentra todas las palabras posibles en un tablero de personajes) | Serie 1»

Imprime todas las formas posibles de escribir N como suma de dos o más números enteros positivos

Dado un número entero N , la tarea es imprimir todas las formas posibles en las que N se puede escribir como la suma de dos o más números enteros positivos. Ejemplos:   Entrada: N = 4  Salida:  1 1 1 1  1 1 2  1 3  2 2  Entrada: N = 3  Salida:  1 1 … Continue reading «Imprime todas las formas posibles de escribir N como suma de dos o más números enteros positivos»

Imprime todas las combinaciones de una string en orden lexicográfico

Dada una string str, imprime todas las combinaciones de una string en orden lexicográfico. Ejemplos:   Input: str = «ABC» Output: A AB ABC AC ACB B BA BAC BC BCA C CA CAB CB CBA Input: ED Output: D DE E ED Enfoque: cuente las ocurrencias de todos los caracteres en la string usando un … Continue reading «Imprime todas las combinaciones de una string en orden lexicográfico»

Rata en un laberinto | Retroceder usando Stack

Requisitos previos : recursividad , retroceso y estructura de datos de pila . Un Laberinto se da como array binaria N*M de bloques y hay una rata inicialmente en (0, 0), es decir. maze[0][0] y la rata quiere comer comida que está presente en algún bloque dado en el laberinto (fx, fy). En una array … Continue reading «Rata en un laberinto | Retroceder usando Stack»

Imprime todos los ciclos en un gráfico no dirigido

Dado un grafo no dirigido, imprime todos los vértices que forman ciclos en él. Requisito previo: Detectar ciclo en un gráfico dirigido usando colores   En el diagrama anterior, los ciclos se han marcado con color verde oscuro. La salida para lo anterior será   1er ciclo: 3 5 4 6  2do ciclo: 11 12 13 Planteamiento: Usando … Continue reading «Imprime todos los ciclos en un gráfico no dirigido»

Subsecuencias únicas de longitud K con suma dada

Dada una array arr[] de N enteros y dos números K y S , la tarea es imprimir toda la subsecuencia de longitud K con la suma S . Ejemplos:   Entrada: N = 5, K = 3, S = 20, arr[] = {4, 6, 8, 2, 12}  Salida:  {6, 2, 12}  Explicación:  Solo una subsecuencia … Continue reading «Subsecuencias únicas de longitud K con suma dada»

Algoritmos | Retrocediendo | Pregunta 1

¿Cuál de los siguientes no es un algoritmo de retroceso? (A) Problema del recorrido del caballero (B) Problema de la reina N (C) Torre de Hanoi (D) Problema de coloreado del M Respuesta: (C) Explicación: El problema del recorrido del caballero, el problema de la reina N y el problema de coloreado M implican retroceder. … Continue reading «Algoritmos | Retrocediendo | Pregunta 1»