Maximice el número de mazos de cartas que se pueden formar a partir de cartas de un tipo y un comodín dados

Dado un número entero N que denota el número de cartas en una baraja específica y una array arr[] de tamaño N donde i -ésimo elemento denota la frecuencia del i -ésimo tipo de carta. También dado K Jokers. La tarea es encontrar el máximo de barajas válidas posibles con los datos dados.  Una baraja … Continue reading «Maximice el número de mazos de cartas que se pueden formar a partir de cartas de un tipo y un comodín dados»

Verifique si la array se puede dividir en dos subsecuencias fusionando quién hace que la array esté ordenada

Dada una array de enteros A[] de tamaño N , la tarea es verificar si la array se puede dividir en dos subsecuencias, de modo que agregar una de ellas al final de la otra haga que la array se ordene. Una subsecuencia es una secuencia que se puede obtener de la array eliminando algunos … Continue reading «Verifique si la array se puede dividir en dos subsecuencias fusionando quién hace que la array esté ordenada»

Clasificación por selección VS Clasificación por burbujas

No es una contribución válida En esto, cubriremos la comparación entre Selection Sort VS Bubble Sort. Los recursos requeridos por los algoritmos de Clasificación por Selección y Clasificación por Burbujas sobre la base de la Complejidad de Tiempo y Espacio son los siguientes.  Time Complexity – Space Complexity –  Profundicemos en el funcionamiento de estos … Continue reading «Clasificación por selección VS Clasificación por burbujas»

Programa de Python para QuickSort

Sort de combinación poco probable , QuickSort es un algoritmo de divide y vencerás . Selecciona un elemento como pivote y divide la array dada alrededor del pivote elegido. 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 … Continue reading «Programa de Python para QuickSort»

Implementación de ordenación rápida utilizando hilos MPI, OMP y Posix

QuickSort es un algoritmo divide y vencerás . Selecciona un elemento como pivote y divide la array alrededor del pivote elegido. Hay muchas formas de elegir los elementos de pivote. Están: Elija siempre el primer elemento como pivote. Elija siempre el último elemento como pivote (implementado a continuación) Elija un elemento aleatorio como pivote. Elija … Continue reading «Implementación de ordenación rápida utilizando hilos MPI, OMP y Posix»

Escriba un número en orden ascendente que contenga 1, 2 y 3 en sus dígitos.

Dada una array de números, la tarea es imprimir esos números en orden ascendente separados por comas que tienen 1, 2 y 3 en sus dígitos. Si no hay ningún número que contenga los dígitos 1, 2 y 3, imprima -1. Ejemplos: Input : numbers[] = {123, 1232, 456, 234, 32145} Output : 123, 1232, … Continue reading «Escriba un número en orden ascendente que contenga 1, 2 y 3 en sus dígitos.»

Mejora en el algoritmo de clasificación rápida

Requisito previo: Algoritmo QuickSort El algoritmo de clasificación rápida discutido en este artículo puede tomar tiempo O (N 2 ) en el peor de los casos. Por lo tanto, se necesitan ciertas variaciones que puedan dividir eficientemente la array y reorganizar los elementos alrededor del pivote. Partición de pivote único : en la partición de … Continue reading «Mejora en el algoritmo de clasificación rápida»

Ordenar una array de números romanos en orden ascendente

Dada una array arr[] de N números romanos , la tarea es ordenar estos números romanos en orden ascendente. Ejemplos:  Entrada: arr[] = { “MCMIV”, “MIV”, “MCM”, “MMIV” }  Salida: MIV MCM MCMIV MMIV  Explicación:  Los números romanos en su correspondiente sistema decimal son:  MIV: 1004  MCM: 1900  MCMIV: 1904  MMIV: 2004 Entrada: arr = … Continue reading «Ordenar una array de números romanos en orden ascendente»

Minimice las eliminaciones consecutivas de elementos del mismo tipo para vaciar la array dada

Dada una array A[ ] que consta de N enteros positivos , de modo que cada elemento de la array A i denota el recuento de elementos del i -ésimo tipo, la tarea es minimizar el número de eliminaciones de elementos consecutivos del mismo tipo para vaciar la array dada. . Ejemplos:  Entrada: A[ ] … Continue reading «Minimice las eliminaciones consecutivas de elementos del mismo tipo para vaciar la array dada»

Divida la array en un número mínimo de subconjuntos con una diferencia entre cada par superior a 1

Dada una array arr[] de tamaño N , la tarea es dividir la array en un número mínimo de subconjuntos de modo que cada par de elementos en cada subconjunto tenga una diferencia estrictamente mayor que 1. Nota: Todos los elementos de la array son distintos. Ejemplos: Entrada: arr = {5, 10, 6, 50} Salida: … Continue reading «Divida la array en un número mínimo de subconjuntos con una diferencia entre cada par superior a 1»