Cola de montón (o heapq) en Python

La estructura de datos del montón se utiliza principalmente para representar una cola de prioridad . En Python, está disponible usando el módulo “ heapq ”. La propiedad de esta estructura de datos en Python es que cada vez que se extrae el elemento de montón más pequeño (min heap) . Cada vez que se … Continue reading «Cola de montón (o heapq) en Python»

Programa Python para invertir el contenido de un archivo usando Stack

Dado un archivo, la tarea es imprimir y almacenar las líneas de ese archivo en orden inverso usando Stack. Ejemplos:   Input : I am new to this world of Python. Output : Python. world of new to this I am Input : 1 2 3 4 5 Output : 5 4 3 2 1 Acercarse:   … Continue reading «Programa Python para invertir el contenido de un archivo usando Stack»

Eliminar Nodes de listas vinculadas que tienen un valor menor en el lado izquierdo

Dada una lista enlazada individualmente, la tarea es eliminar todos los Nodes que tienen un valor menor en el lado izquierdo. Ejemplos:   Input: 12->15->10->11->5->6->2->3 Output: Modified Linked List = 12 -> 10 -> 5 -> 2 Input: 25->15->6->48->12->5->16->14 Output: Modified Linked List = 25 -> 15 -> 6 -> 5 Acercarse:  Inicialice un máximo variable … Continue reading «Eliminar Nodes de listas vinculadas que tienen un valor menor en el lado izquierdo»

Programa de Python para encontrar la longitud de una lista vinculada

Escriba una función para contar el número de Nodes en una lista enlazada simple dada. Por ejemplo, la función debería devolver 5 para la lista enlazada 1->3->1->2->1. Solución iterativa: 1) Initialize count as 0 2) Initialize a node pointer, current = head. 3) Do following while current is not NULL a) current = current -> … Continue reading «Programa de Python para encontrar la longitud de una lista vinculada»

Programa de Python para comprobar si una lista enlazada de strings forma un palíndromo

Dada una lista vinculada que maneja datos de strings, verifique si los datos son palíndromos o no. Ejemplos: Input: a -> bc -> d -> dcb -> a -> NULL Output: True String «abcddcba» is palindrome. Input: a -> bc -> d -> ba -> NULL Output: False String «abcdba» is not palindrome. La idea … Continue reading «Programa de Python para comprobar si una lista enlazada de strings forma un palíndromo»

Programa de Python para particionar una lista vinculada en torno a un valor dado y mantener el orden original

Dada una lista enlazada y un valor x, se divide de manera que todos los Nodes menores que x sean los primeros, luego todos los Nodes con un valor igual a x y finalmente los Nodes con un valor mayor o igual a x. Debe conservarse el orden relativo original de los Nodes en cada … Continue reading «Programa de Python para particionar una lista vinculada en torno a un valor dado y mantener el orden original»

Implementación de la lista enlazada XOR en Python

Requisito previo: Lista vinculada XOR Una lista doblemente enlazada ordinaria requiere espacio para dos campos de dirección para almacenar las direcciones de los Nodes anterior y siguiente. Se puede crear una versión con uso eficiente de la memoria de la lista doblemente enlazada usando solo un espacio para el campo de dirección con cada Node. … Continue reading «Implementación de la lista enlazada XOR en Python»

Pila y colas en Python – Part 1

Prerrequisitos: list y Deque en Python . A diferencia de C++ STL y Java Collections, Python tiene clases/interfaces específicas para Stack y Queue . Las siguientes son diferentes formas de implementar en Python 1) El uso de list Stack funciona según el principio de «Último en entrar, primero en salir». Además, las funciones integradas en … Continue reading «Pila y colas en Python – Part 1»

Programa Python3 para rotar la sublista de una lista vinculada desde la posición M a la N a la derecha por K lugares

Dada una lista enlazada y dos posiciones ‘m’ y ‘n’. La tarea es rotar la sublista desde la posición m hasta la n, hacia la derecha k lugares. Ejemplos: Entrada: lista = 1->2->3->4->5->6, m = 2, n = 5, k = 2 Salida: 1->4->5->2->3->6 Gire la sublista 2 3 4 5 hacia la derecha 2 … Continue reading «Programa Python3 para rotar la sublista de una lista vinculada desde la posición M a la N a la derecha por K lugares»

Programa de Python para reorganizar una lista vinculada dada en el lugar

Dada una lista unida L 0 -> L 1 -> … -> L n-1 -> L n . Reorganice los Nodes en la lista para que la nueva lista formada sea: L 0 -> L n -> L 1 -> L n-1 -> L 2 -> L n-2 … Debe hacer esto en su lugar … Continue reading «Programa de Python para reorganizar una lista vinculada dada en el lugar»