Para quienes deseen profundizar más en esta estructura de datos les adjunto un video donde explican detalladamente las Linked List / Lista Enlazada.
.
Espero les sea de ayuda.
¡Te damos la bienvenida a este reto!
Empezando con Python desde 0
DÃa 1
Variables, funciones y sintaxis básica
Tipos de datos: Numbers, Strings y Diccionarios
Playground - Retorna el tipo
DÃa 2
Operadores
Playground - Calcula la propina
DÃa 3
Condicionales
Playground - Averigua si un año es bisiesto
Ciclos
Playground - Dibuja un triangulo usando bucles
DÃa 4
Listas
Encuentra a los gatitos más famosos
Diccionarios
Obtén el promedio de los estudiantes
Tuplas
Obten la información de los paquetes
DÃa 5
Calcula la cantidad de letras en una oración
Encuentra el mayor palÃndromo
DÃa 6
Sets
Encuentre la intersección de conjuntos
DÃa 7
List comprehension
Encuentra palabras con dos vocales
Dictionary Comprehension
Calcula la longitud de las palabras
DÃa 8
Funciones Lambda
Filtra mensajes de un user especÃfico
Higher order functions
Crea tu propio método map
DÃa 9
Manejo de Errores y excepciones
Maneja correctamente los errores
Maneja las excepciones
DÃa 10
Playground - Crea un task manager usando closures
DÃa 11
Lectura de archivos de texto y CSV
DÃa 12
Programación orientada a objetos
Crea un auto usando clases
DÃa 13
Abstracción en Python
Playground - Crea un sistema de carrito de compras
Encapsulamiento en Python
Playground - Encapsula datos de los usuarios
DÃa 14
Herencia en Python
Playground - JerarquÃa de animales usando herencia
DÃa 15
Polimorfismo en Python
Playground - Implementa un sistema de pagos
DÃa 16
Estructuras de datos en Python
Playground - Crea tu propia lista en python
Hash tables en Python
Playground - Implementación de una HashTable para Contactos
DÃa 17
Maps en Python
Playground - Crea un task manager con Maps
DÃa 18
Singly Linked List en Python
Playground - Implementación de una singly linked list
DÃa 19
Stacks en Python
Playground - Implementación de un stack
DÃa 20
Queues en Python
Playground - Implementación de una queue
DÃa 21
¡Lo lograste!
No se trata de lo que quieres comprar, sino de quién quieres ser. Aprovecha el precio especial.
Antes: $249
Paga en 4 cuotas sin intereses
Termina en:
LeoCode0
Lectura
Una Singly Linked List (lista enlazada simple) es una estructura de datos lineal en la que cada elemento (nodo) contiene un valor y un puntero al siguiente nodo en la lista. La lista enlazada comienza con un nodo llamado cabeza (head) que apunta al primer elemento de la lista, y termina con un nodo llamado cola (tail) que apunta a None
.
...
RegÃstrate o inicia sesión para leer el resto del contenido.
Aportes 6
Preguntas 0
Para quienes deseen profundizar más en esta estructura de datos les adjunto un video donde explican detalladamente las Linked List / Lista Enlazada.
.
Espero les sea de ayuda.
class Node:
def __init__(self, value):
self.value = value
self.next = None
class LinkedList:
def __init__(self):
self.head = None
self.tail = None
self.length = 0
def append(self, value):
new_node = Node(value)
if self.head is None:
self.head = new_node
self.tail = new_node
else:
self.tail.next = new_node
self.tail = new_node
self.length += 1
def prepend(self, value):
new_node = Node(value)
if self.head is None:
self.head = new_node
self.tail = new_node
else:
new_node.next = self.head
self.head = new_node
self.length += 1
def delete(self, value):
if self.head is None:
return
if self.head.value == value:
self.head = self.head.next
self.length -= 1
return
current_node = self.head
while current_node.next:
if current_node.next.value == value:
current_node.next = current_node.next.next
self.length -= 1
return
current_node = current_node.next
# Método para imprimir la lista de nodos
def print_list(self):
node = self.head
while node != None:
print(node.value, end =" => ")
node = node.next
element=LinkedList() #instancia de la clase
element.append(5)
element.append(1)
element.prepend(2)
element.print_list()
un aporte sobre listas enlazadas
link: https://pythondiario.com/2018/07/linked-list-listas-enlazadas.html
https://www.geeksforgeeks.org/insert-node-middle-linked-list/
Aqui un video que comenta sobre otro video de la comparación entre listas y vectores
https://www.youtube.com/watch?v=cvZArAipOjo
Lo de la Big O al final me da curiosidad, pues eso depende de la implementación, y acceder all Tail
también puede ser O(1)
.
Dejo una clase que me gusto del tema:
La ventaja principal de una Singly Linked List es que permite una inserción y eliminación eficiente de elementos en cualquier posición de la lista.
Sin embargo, a diferencia de las listas nativas de Python, las Singly Linked Lists no ofrecen acceso aleatorio a los elementos
(por Ãndice), ya que para acceder a un elemento especÃfico, debemos recorrer la lista desde el inicio hasta el nodo deseado.
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?