Visualización del algoritmo de ordenación: ordenación por inserción

Un algoritmo como el Ordenamiento por Inserción se puede entender fácilmente al visualizarlo. En este artículo se ha implementado un programa que visualiza el Algoritmo de Ordenación por Inserción. La interfaz gráfica de usuario (GUI) se implementa en python utilizando la biblioteca pygame . Acercarse:   Genere una array aleatoria y llene la ventana de pygame con barras. … Continue reading «Visualización del algoritmo de ordenación: ordenación por inserción»

Vector de clasificación de pares en C++ | Conjunto 1 (Ordenar por primero y segundo)

¿Qué es el vector de pares? Un par es un contenedor que almacena dos valores asignados entre sí, y un vector que contiene un número múltiple de dichos pares se denomina vector de pares. // C++ program to demonstrate vector of pairs #include<bits/stdc++.h> using namespace std;    int main() {     //declaring vector of pairs     vector< … Continue reading «Vector de clasificación de pares en C++ | Conjunto 1 (Ordenar por primero y segundo)»

Ordenar los elementos pares en orden creciente y los impares en orden decreciente

Nos dan una array de n números distintos. La tarea es clasificar todos los números pares en orden creciente y los números impares en orden decreciente. La array modificada debe contener todos los números pares ordenados seguidos de los números impares ordenados inversamente. Tenga en cuenta que el primer elemento se considera incluso colocado debido … Continue reading «Ordenar los elementos pares en orden creciente y los impares en orden decreciente»

Suma de la diferencia mínima absoluta de cada elemento de la array

Dada una array de n enteros distintos. El problema es encontrar la suma de la mínima diferencia absoluta de cada elemento de la array. Para un elemento x presente en el índice i de la array, su diferencia absoluta mínima se calcula como: Diferencia absoluta mínima  (x) = min(abs(x – arr[j])), donde 1 <= j … Continue reading «Suma de la diferencia mínima absoluta de cada elemento de la array»

QuickSort usando rotación aleatoria

En este artículo, discutiremos cómo implementar QuickSort usando pivoteo aleatorio. En QuickSort, primero particionamos la array en su lugar de modo que todos los elementos a la izquierda del elemento pivote sean más pequeños, mientras que todos los elementos a la derecha del pivote sean más grandes que el pivote. Luego llamamos recursivamente al mismo … Continue reading «QuickSort usando rotación aleatoria»

Rango de todos los elementos en una array

Dada una array de N enteros con duplicados permitidos. Todos los elementos se clasifican del 1 al N en orden ascendente si son distintos. Si hay, digamos, x elementos repetidos de un valor particular, a cada elemento se le debe asignar un rango igual a la media aritmética de x rangos consecutivos. Ejemplos:   Input : … Continue reading «Rango de todos los elementos en una array»

Python | Ordenar una array según la diferencia absoluta

Dada una array de N elementos distintos y un número val , reorganiza los elementos de la array de acuerdo con la diferencia absoluta con val , es decir, el elemento que tiene la diferencia mínima aparece primero y así sucesivamente. Además, el orden de los elementos de la array debe mantenerse en caso de … Continue reading «Python | Ordenar una array según la diferencia absoluta»

Número de elementos mayores que K en el rango L a R utilizando Fenwick Tree (consultas sin conexión)

Prerrequisitos: Fenwick Tree (Árbol indexado binario) Dada una array de N números y una cantidad de consultas donde cada consulta contendrá tres números (l, r y k). La tarea es calcular el número de elementos del arreglo que son mayores que K en el subarreglo [L, R]. Ejemplos:   Input: n=6 q=2 arr[ ] = { 7, … Continue reading «Número de elementos mayores que K en el rango L a R utilizando Fenwick Tree (consultas sin conexión)»

Clasificación de cuentas | Un algoritmo de clasificación natural

También conocido como Gravity sort, este algoritmo se inspiró en fenómenos naturales y se diseñó teniendo en cuenta los objetos (o cuentas) que caen bajo la influencia de la gravedad. La idea: los números positivos están representados por un conjunto de cuentas como las de un ábaco. Clasificación de {7, 2, 1, 4, 2} usando … Continue reading «Clasificación de cuentas | Un algoritmo de clasificación natural»

Método de ordenación de la lista de Python()

La función Python list sort() se puede usar para ordenar una lista en orden ascendente, descendente o definido por el usuario. En cada caso, la complejidad del tiempo es O(nlogn).  Para ordenar la lista en orden ascendente Sintaxis: nombre_lista.ordenar()  Esto ordenará la lista dada en orden ascendente. Esta función se puede utilizar para ordenar una … Continue reading «Método de ordenación de la lista de Python()»