Busque en una array 2D ordenada por filas y columnas utilizando el algoritmo Divide and Conquer – Part 1

Dada una array nxn, donde cada fila y columna se ordenan en orden creciente. Dada una clave, cómo decidir si esta clave está en la array. Una complejidad de tiempo lineal se discute en la publicación anterior. Este problema también puede ser un muy buen ejemplo para los algoritmos de divide y vencerás . El siguiente … Continue reading «Busque en una array 2D ordenada por filas y columnas utilizando el algoritmo Divide and Conquer – Part 1»

Operaciones mínimas del tipo dado requeridas para hacer un gráfico completo

Dado N vértice donde N es par . Inicialmente no hay arista entre ninguno de los vértices. Se le permite realizar la operación como se ilustra aquí:   En una sola operación , el total de Nodes se puede dividir en dos grupos y los bordes ( u, v) se pueden dibujar para todos los valores posibles … Continue reading «Operaciones mínimas del tipo dado requeridas para hacer un gráfico completo»

Cuente elementos distintos después de agregar cada elemento de First Array con Second Array

Dadas dos arrays arr1[] y arr2[] . Podemos generar otra array arr3[] agregando cada elemento de la array arr1[] a cada elemento arr2[] . La tarea es encontrar el recuento de elementos distintos en la array arr3[] . Ejemplos:   Entrada: Arr1[] = {1, 2}, Arr2[] = {3, 4}, MAX = 4  Salida:  4 -> 1  … Continue reading «Cuente elementos distintos después de agregar cada elemento de First Array con Second Array»

Reduzca la array eliminando elementos que son mayores que todos los elementos a su izquierda

Dada una array arr[] de N enteros, la tarea es eliminar el elemento de la array dada si el elemento a su izquierda es más pequeño que él. Continúe eliminando los elementos de la array hasta que ningún elemento tenga un elemento izquierdo adyacente más pequeño. Imprima la array resultante después de la operación anterior. … Continue reading «Reduzca la array eliminando elementos que son mayores que todos los elementos a su izquierda»

Mth bit en Nth string binaria de una secuencia generada por las operaciones dadas

Dados dos números enteros N y M , genere una secuencia de N strings binarias mediante los siguientes pasos: S 0 = “0” S1 = “1 ” Genere las strings restantes mediante la ecuación S i = reverse(S i – 2 ) + reverse(S i – 1 ) La tarea es encontrar el M -ésimo … Continue reading «Mth bit en Nth string binaria de una secuencia generada por las operaciones dadas»

Suma de i * countDigits(i)^2 para todos los i en el rango [L, R]

Dado un rango [L, R] , la tarea es encontrar la suma i * countDigits(i) 2 para todo i ∈ [L, R] donde countDigits(i) es el conteo de dígitos en i . Es decir, encuentra:   L * contarDigitos(L) 2 + (L + 1) * contarDigitos(L + 1) 2 + ….. + R * contarDigitos(R) 2 … Continue reading «Suma de i * countDigits(i)^2 para todos los i en el rango [L, R]»

Minimice el recuento de subsecuencias alternas para dividir la string binaria dada con el número de subsecuencia

Dada una string binaria S de longitud N . La tarea es encontrar lo siguiente: El número mínimo de subsecuencias en las que se puede dividir la string S , de modo que la subsecuencia no contenga ceros ni unos adyacentes. Número de subsecuencia al que pertenece cada carácter de la string S. Si hay … Continue reading «Minimice el recuento de subsecuencias alternas para dividir la string binaria dada con el número de subsecuencia»

Ordenación rápida

Al igual que Merge Sort , QuickSort es un algoritmo Divide and Conquer . Selecciona un elemento como pivote y divide la array dada alrededor del pivote seleccionado. Hay muchas versiones diferentes de quickSort que seleccionan el pivote de diferentes maneras.  Elija siempre el primer elemento como pivote. Elija siempre el último elemento como pivote … Continue reading «Ordenación rápida»

Disminuir y conquistar

Como ya se discutió el enfoque de divide y vencerás , que incluye los siguientes pasos: Divide el problema en varios subproblemas que son instancias más pequeñas del mismo problema. Conquista los subproblemas resolviéndolos recursivamente. Sin embargo, si los tamaños de los subproblemas son lo suficientemente pequeños, simplemente resuelva los subproblemas de una manera sencilla. … Continue reading «Disminuir y conquistar»

Valor mínimo de K tal que la suma de los cubos del primer número natural K es mayor que igual a N

Dado un número N , la tarea es encontrar el valor mínimo K tal que la suma de los cubos del primer número natural K sea mayor o igual que N . Ejemplos:   Entrada: N = 100  Salida: 4  Explicación:  La suma de los cubos de los 4 primeros números naturales es 100, que es igual … Continue reading «Valor mínimo de K tal que la suma de los cubos del primer número natural K es mayor que igual a N»