¿Por qué quicksort es mejor que mergesort?

Esta es una pregunta común que se hace en las entrevistas de DS que, a pesar del mejor rendimiento en el peor de los casos de mergesort, quicksort se considera mejor que mergesort . Hay ciertas razones por las cuales Quicksort es mejor, especialmente en el caso de arrays:  Espacio auxiliar: Mergesort usa espacio adicional, … Continue reading «¿Por qué quicksort es mejor que mergesort?»

Clasificación posible usando rotación de subarreglo de tamaño 3

Dada una array de valores enteros que deben ordenarse mediante una sola operación: rotación de subarreglo donde el tamaño del subarreglo debe ser 3. Por ejemplo, si nuestra array es (1 2 3 4), entonces podemos llegar a (1 4 2 3), (3 1 2 4) en un solo paso. Necesitamos decir si es posible … Continue reading «Clasificación posible usando rotación de subarreglo de tamaño 3»

Programa de Python para fusionar en el lugar dos listas vinculadas sin cambiar los enlaces de la primera lista

Dadas dos listas ordenadas enlazadas individualmente que tienen n y m elementos cada una, combínelas usando un espacio constante. Primero, los n elementos más pequeños en ambas listas deben formar parte de la primera lista y el resto de los elementos deben formar parte de la segunda lista. Se debe mantener el orden ordenado. No … Continue reading «Programa de Python para fusionar en el lugar dos listas vinculadas sin cambiar los enlaces de la primera lista»

Programa de Python para fusionar K listas enlazadas ordenadas – Conjunto 1

Dadas K listas enlazadas ordenadas de tamaño N cada una, combínelas e imprima la salida ordenada. Ejemplos:  Input: k = 3, n = 4 list1 = 1->3->5->7->NULL list2 = 2->4->6->8->NULL list3 = 0->9->10->11->NULL Output: 0->1->2->3->4->5->6->7->8->9->10->11 Merged lists in a sorted order where every element is greater than the previous element. Input: k = 3, n … Continue reading «Programa de Python para fusionar K listas enlazadas ordenadas – Conjunto 1»

Programa Php para contar inversiones en una array: conjunto 1 (usando Merge Sort)

El conteo de inversión para una array indica qué tan lejos (o cerca) está la array de ser ordenada. Si la array ya está ordenada, entonces el conteo de inversión es 0, pero si la array está ordenada en orden inverso, el conteo de inversión es el máximo. Hablando formalmente, dos elementos a[i] y a[j] forman … Continue reading «Programa Php para contar inversiones en una array: conjunto 1 (usando Merge Sort)»

Visualización 3D de Merge Sort usando Matplotlib

La visualización de algoritmos facilita su comprensión al analizar y comparar la cantidad de operaciones que tuvieron lugar para comparar e intercambiar los elementos. La visualización 3D de algoritmos es menos común, para esto usaremos matplotlib para trazar gráficos de barras y animarlos para representar los elementos de la array. Acercarse : Generaremos una array … Continue reading «Visualización 3D de Merge Sort usando Matplotlib»

Experiencia de entrevista de Paytm | Conjunto 14 (para desarrolladores sénior de Android)

Desarrollador sénior de Android Ronda de codificación: Atravesando en espiral una array Subsecuencia creciente más larga Primera ronda: encuentre la «línea más larga» de 1 en una array. Horizontales y Verticales. La array está hecha solo de 0 y 1, y se ve, por ejemplo, así: 4 4 0 1 1 1 0 1 0 … Continue reading «Experiencia de entrevista de Paytm | Conjunto 14 (para desarrolladores sénior de Android)»

Clasificación de combinación en el lugar

Implemente Merge Sort , es decir, implementación estándar manteniendo el algoritmo de clasificación en su lugar. In situ significa que no ocupa memoria adicional para la operación de fusión como en el caso estándar. Ejemplos:  Entrada: arr[] = {2, 3, 4, 1}  Salida: 1 2 3 4 Entrada: arr[] = {56, 2, 45}  Salida: 2 45 … Continue reading «Clasificación de combinación en el lugar»

Programa C++ para combinar en el lugar dos listas vinculadas sin cambiar los enlaces de la primera lista

Dadas dos listas ordenadas enlazadas individualmente que tienen n y m elementos cada una, combínelas usando un espacio constante. Primero, los n elementos más pequeños en ambas listas deben formar parte de la primera lista y el resto de los elementos deben formar parte de la segunda lista. Se debe mantener el orden ordenado. No … Continue reading «Programa C++ para combinar en el lugar dos listas vinculadas sin cambiar los enlaces de la primera lista»