Encuentre el siguiente elemento mayor en una array circular – Part 1

Dado un arreglo circular arr[] de N enteros tal que el último elemento del arreglo dado es adyacente al primer elemento del arreglo, la tarea es imprimir el Próximo Elemento Mayor en este arreglo circular. Elementos para los que no existe un elemento mayor, considere el siguiente elemento mayor como «-1» . Ejemplos: Entrada: arr[] … Continue reading «Encuentre el siguiente elemento mayor en una array circular – Part 1»

Algoritmo de dibujo de círculo de punto medio

El algoritmo de dibujo de círculo de punto medio es un algoritmo utilizado para determinar los puntos necesarios para rasterizar un círculo.   Usamos el algoritmo del punto medio para calcular todos los puntos del perímetro del círculo en el primer octante y luego los imprimimos junto con sus puntos de espejo en los otros octantes. … Continue reading «Algoritmo de dibujo de círculo de punto medio»

Conversión de números romanos a decimales entre 1 y 3999

Dado un número romano, la tarea es encontrar su valor decimal correspondiente. Ejemplo :  Input: IX Output: 9 IX is a Roman symbol which represents 9 Input: XL Output: 40 XL is a Roman symbol which represents 40 Input: MCMIV Output: 1904 M is a thousand, CM is nine hundred and IV is four Los … Continue reading «Conversión de números romanos a decimales entre 1 y 3999»

Implementar el Algoritmo Hashing Seguro – 512 ( SHA-512 ) como Paradigma de Programación Funcional

Dada una string S de longitud N , la tarea es encontrar el valor hash SHA-512 de la string S dada . Ejemplos: Entrada: S = «GeeksforGeeks» Salida: acc10c4e0b38617f59e88e49215e2e894afaee5ec948c2af6f44039f03c9fe47a9210e01d5cd926c142bdc9179c2ad30f927a8faf69421ff60a5eaddcf8cb5eaddcf8cb5 Entrada: S = «hola mundo» Salida: 309ecc489c12d6eb4cc40f50c902f2b4d0ed77ee511a7c7a9bcd3ca86d4cd86f989dd35bc5ff499670da34255b45b0cfd830e81f605dcf7dc5542e93ae9cd76f Enfoque: siga los pasos a continuación para resolver el problema: Convierte la string dada a la forma binaria . … Continue reading «Implementar el Algoritmo Hashing Seguro – 512 ( SHA-512 ) como Paradigma de Programación Funcional»

Agrupación de consenso

Agrupación: Antes de aprender Clustering por Consenso, debemos saber qué es Clustering . En Machine Learning, Clustering es una técnica utilizada para agrupar diferentes objetos en clústeres separados según su similitud, es decir, objetos similares estarán en los mismos clústeres, separados de otros clústeres de objetos similares. Es un método de aprendizaje no supervisado . … Continue reading «Agrupación de consenso»

Método de congruencia aditiva para generar números pseudoaleatorios

El método congruente aditivo es un tipo de generador congruente lineal para generar números pseudoaleatorios en un rango específico. Este método se puede definir como:  dónde,   X , la secuencia de números pseudoaleatorios m ( > 0), el módulo c [0, m), el incremento X 0 [0, m), el valor inicial de la secuencia, … Continue reading «Método de congruencia aditiva para generar números pseudoaleatorios»

Técnicas de Diseño de Algoritmos

¿Qué es un algoritmo?  Un algoritmo es un procedimiento para resolver un problema particular en un número finito de pasos para una entrada de tamaño finito. Los algoritmos se pueden clasificar de varias maneras. Están:   Método de implementación Método de diseño Enfoques de diseño Otras clasificaciones En este artículo, se discuten los diferentes algoritmos en cada … Continue reading «Técnicas de Diseño de Algoritmos»

Complejidad de espacio constante y lineal en algoritmos

Como programador, es posible que hayas resuelto muchos desafíos de programación. En la programación, la complejidad del espacio y el tiempo importa mucho cuando necesitamos ejecutar un programa. Nuestro algoritmo debería ser eficiente y debería tomar menos tiempo. Cada vez que escribe una solución para un programa, se requiere algo de memoria para completar, y … Continue reading «Complejidad de espacio constante y lineal en algoritmos»

Tamaño del subconjunto más pequeño con máximo Bitwise OR

Dada una array de enteros positivos. La tarea es encontrar el tamaño del subconjunto más pequeño tal que el Bitwise OR de ese conjunto sea el Máximo posible.  Ejemplos :  Input : arr[] = {5, 1, 3, 4, 2} Output : 2 7 is the maximum value possible of OR, 5|2 = 7 and 5|3 … Continue reading «Tamaño del subconjunto más pequeño con máximo Bitwise OR»

Menos ancestro común de cualquier número de Nodes en el árbol binario

Dado un árbol binario (no un árbol de búsqueda binario) y cualquier número de Nodes clave, la tarea es encontrar el ancestro menos común de todos los Nodes clave.  La siguiente es la definición de LCA de Wikipedia :  Sea T un árbol enraizado. El ancestro común más bajo entre dos Nodes n1 y n2 … Continue reading «Menos ancestro común de cualquier número de Nodes en el árbol binario»