SlideShare una empresa de Scribd logo
1 de 10
Descargar para leer sin conexión
República bolivariana de Venezuela
Instituto universitario de tecnología
“Antonio José de sucre”
Extensión san Felipe
Jhon Anton
C.I:31.184.245
Informática (78)
3 Semestre
Prof: Naudy Del Valle Albornoz
III CORTE 10%
DECLARACION DE LISTAS
San Felipe, Febrero 2024
Conceptos
Una lista es una estructura de datos que almacena una colección de elementos en
orden. Los elementos de una lista pueden ser de cualquier tipo de datos, como
números, cadenas o incluso otros objetos.
Características
 Orden: Los elementos de una lista se almacenan en un orden específico.
 Unicidad: Los elementos de una lista deben ser únicos. No se pueden repetir
dos veces el mismo elemento en una lista.
 Dinamismo: Las listas son dinámicas, lo que significa que se pueden
agregar o eliminar elementos de la lista en cualquier momento.
Tipos
Hay tres tipos principales de listas:
 Listas simples: Las listas simples son el tipo de lista más simple. Consisten
en una colección de elementos que están conectados entre sí mediante
punteros.
 Listas enlazadas doblemente: Las listas enlazadas doblemente son
similares a las listas simples, pero cada elemento tiene dos punteros: uno al
siguiente elemento y otro al elemento anterior.
 Listas circulares: Las listas circulares son un tipo especial de lista en la que
el último elemento apunta al primer elemento.
Usos de las listas
Las listas se utilizan en una amplia variedad de aplicaciones, incluyendo:
 Almacenamiento de datos: Las listas se pueden utilizar para almacenar
cualquier tipo de datos, como números, cadenas o incluso otros objetos.
 Implementación de algoritmos: Las listas se pueden utilizar para implementar
una variedad de algoritmos, como el ordenamiento y la búsqueda.
 Representación de estructuras de datos: Las listas se pueden utilizar para
representar una variedad de estructuras de datos, como árboles y grafos.
Listas simples
class Nodo:
def __init__(self, dato):
self.dato = dato
self.siguiente = None
class ListaSimple:
def __init__(self):
self.primero = None
self.ultimo = None
def agregar(self, dato):
nuevo_nodo = Nodo(dato)
if self.primero is None:
self.primero = nuevo_nodo
self.ultimo = nuevo_nodo
else:
self.ultimo.siguiente = nuevo_nodo
self.ultimo = nuevo_nodo
def recorrer(self):
actual = self.primero
while actual is not None:
print(actual.dato)
actual = actual.siguiente
# Ejemplo de uso
lista = ListaSimple()
lista.agregar(10)
lista.agregar(20)
lista.agregar(30)
lista.recorrer()
Listas enlazadas
class Nodo:
def __init__(self, dato):
self.dato = dato
self.anterior = None
self.siguiente = None
class ListaEnlazada:
def __init__(self):
self.primero = None
self.ultimo = None
def agregar(self, dato):
nuevo_nodo = Nodo(dato)
if self.primero is None:
self.primero = nuevo_nodo
self.ultimo = nuevo_nodo
else:
nuevo_nodo.siguiente = self.primero
self.primero.anterior = nuevo_nodo
self.primero = nuevo_nodo
def recorrer(self):
actual = self.primero
while actual is not None:
print(actual.dato)
actual = actual.siguiente
# Ejemplo de uso
lista = ListaEnlazada()
lista.agregar(10)
lista.agregar(20)
lista.agregar(30)
lista.recorrer()
Listas circulares
class Nodo:
def __init__(self, dato):
self.dato = dato
self.siguiente = None
class ListaCircular:
def __init__(self):
self.primero = None
def agregar(self, dato):
nuevo_nodo = Nodo(dato)
if self.primero is None:
self.primero = nuevo_nodo
nuevo_nodo.siguiente = self.primero
else:
actual = self.primero
while actual.siguiente != self.primero:
actual = actual.siguiente
actual.siguiente = nuevo_nodo
nuevo_nodo.siguiente = self.primero
def recorrer(self):
actual = self.primero
while actual.siguiente != self.primero:
print(actual.dato)
actual = actual.siguiente
print(actual.dato) # Imprimir el último nodo
# Ejemplo de uso
lista = ListaCircular()
lista.agregar(10)
lista.agregar(20)
lista.agregar(30)
lista.recorrer()
Operaciones con listas:
Creación:
# Lista vacía
lista = []
# Lista con elementos
lista = [1, 2, 3, 4, 5]
# Lista con diferentes tipos de datos
lista = ["Hola", 10.5, True]
Inserción:
# Insertar al final
lista.append(6)
# Insertar al principio
lista.insert(0, "A")
# Insertar en una posición específica
lista.insert(2, "B")
Supresión
# Eliminar el último elemento
lista.pop()
# Eliminar el primer elemento
lista.pop(0)
# Eliminar un elemento por su posición
lista.pop(2)
# Eliminar un elemento por su valor
lista.remove("B")
Algoritmos con listas:
1. Búsqueda lineal:
def buscar_lineal(lista, elemento):
for i in range(len(lista)):
if lista[i] == elemento:
return i
return -1
# Ejemplo de uso
valor = buscar_lineal(lista, "B")
if valor != -1:
print(f"El elemento se encuentra en la posición {valor}")
else:
print("El elemento no se encuentra en la lista")
2. Ordenamiento por burbuja:
def ordenar_burbuja(lista):
for i in range(len(lista) - 1):
for j in range(len(lista) - i - 1):
if lista[j] > lista[j + 1]:
lista[j], lista[j + 1] = lista[j + 1], lista[j]
# Ejemplo de uso
ordenar_burbuja(lista)
print(lista)
3. Invertir lista:
def invertir_lista(lista):
lista_invertida = []
for i in range(len(lista) - 1, -1, -1):
lista_invertida.append(lista[i])
return lista_invertida
# Ejemplo de uso
lista_invertida = invertir_lista(lista)
print(lista_invertida)
4. Eliminar duplicados:
def eliminar_duplicados(lista):
lista_sin_duplicados = []
for elemento in lista:
if elemento not in lista_sin_duplicados:
lista_sin_duplicados.append(elemento)
return lista_sin_duplicados
# Ejemplo de uso
lista_sin_duplicados = eliminar_duplicados(lista)
print(lista_sin_duplicados)

Más contenido relacionado

Similar a jhon anton 31.184.245 (declaraciones Listas).pdf

LISTAS EN PROGRAMACION.pdf
LISTAS EN PROGRAMACION.pdfLISTAS EN PROGRAMACION.pdf
LISTAS EN PROGRAMACION.pdfGabriel Mendez
 
Listas,pilas y colas
Listas,pilas y colasListas,pilas y colas
Listas,pilas y colasBlackzerox
 
Pseudocódigo apunte estructuras de datos
Pseudocódigo apunte estructuras de datosPseudocódigo apunte estructuras de datos
Pseudocódigo apunte estructuras de datosAlejandro Canosa
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colasMaxDLeon
 
Listas pilascolas edward.mejia-10-1314
Listas pilascolas edward.mejia-10-1314Listas pilascolas edward.mejia-10-1314
Listas pilascolas edward.mejia-10-1314Edward Mejia Gomez
 
ED Listas, Pilas y Colas
ED Listas, Pilas y ColasED Listas, Pilas y Colas
ED Listas, Pilas y Colasiventura26
 
listas Luis Guarata 31332901.pdf
listas Luis Guarata 31332901.pdflistas Luis Guarata 31332901.pdf
listas Luis Guarata 31332901.pdfLuisAGuarata
 
Estructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colasEstructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colasElias Peña
 
Estructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colasEstructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colasElias Peña
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colasElbery
 
Lissette pimentel 11 1149 --- listas, pilas y colas
Lissette pimentel 11 1149 --- listas, pilas y colasLissette pimentel 11 1149 --- listas, pilas y colas
Lissette pimentel 11 1149 --- listas, pilas y colasLissette I. Pimentel S
 
Listas enlazadas
Listas enlazadasListas enlazadas
Listas enlazadasguestbd36f7
 
Clase 03 Listas en Python.pdf
Clase 03 Listas en Python.pdfClase 03 Listas en Python.pdf
Clase 03 Listas en Python.pdfArielManzano3
 

Similar a jhon anton 31.184.245 (declaraciones Listas).pdf (20)

Presentacion pilas lista y colas
Presentacion pilas lista y colas  Presentacion pilas lista y colas
Presentacion pilas lista y colas
 
LISTAS EN PROGRAMACION.pdf
LISTAS EN PROGRAMACION.pdfLISTAS EN PROGRAMACION.pdf
LISTAS EN PROGRAMACION.pdf
 
Dionely torres 11 1150
Dionely torres 11 1150Dionely torres 11 1150
Dionely torres 11 1150
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
Listas,pilas y colas
Listas,pilas y colasListas,pilas y colas
Listas,pilas y colas
 
Pseudocódigo apunte estructuras de datos
Pseudocódigo apunte estructuras de datosPseudocódigo apunte estructuras de datos
Pseudocódigo apunte estructuras de datos
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
Listas pilascolas edward.mejia-10-1314
Listas pilascolas edward.mejia-10-1314Listas pilascolas edward.mejia-10-1314
Listas pilascolas edward.mejia-10-1314
 
ED Listas, Pilas y Colas
ED Listas, Pilas y ColasED Listas, Pilas y Colas
ED Listas, Pilas y Colas
 
Listas
ListasListas
Listas
 
listas Luis Guarata 31332901.pdf
listas Luis Guarata 31332901.pdflistas Luis Guarata 31332901.pdf
listas Luis Guarata 31332901.pdf
 
Estructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colasEstructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colas
 
Estructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colasEstructura de datos listas, pilas y colas
Estructura de datos listas, pilas y colas
 
Listas,pilas y colas Estructura de Datos
Listas,pilas y colas Estructura de DatosListas,pilas y colas Estructura de Datos
Listas,pilas y colas Estructura de Datos
 
Listas, pilas y colas
Listas, pilas y colasListas, pilas y colas
Listas, pilas y colas
 
Lissette pimentel 11 1149 --- listas, pilas y colas
Lissette pimentel 11 1149 --- listas, pilas y colasLissette pimentel 11 1149 --- listas, pilas y colas
Lissette pimentel 11 1149 --- listas, pilas y colas
 
Listas enlazadas
Listas enlazadasListas enlazadas
Listas enlazadas
 
Listas enlazadas
Listas enlazadasListas enlazadas
Listas enlazadas
 
Clase 03 Listas en Python.pdf
Clase 03 Listas en Python.pdfClase 03 Listas en Python.pdf
Clase 03 Listas en Python.pdf
 

Último

PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxPRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxinformacionasapespu
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónLourdes Feria
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdfgimenanahuel
 
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdfResolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para eventoDiegoMtsS
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.amayarogel
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADOJosé Luis Palma
 
Herramientas de Inteligencia Artificial.pdf
Herramientas de Inteligencia Artificial.pdfHerramientas de Inteligencia Artificial.pdf
Herramientas de Inteligencia Artificial.pdfMARIAPAULAMAHECHAMOR
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxlclcarmen
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoFundación YOD YOD
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PCCesarFernandez937857
 
codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinavergarakarina022
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.José Luis Palma
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptxFelicitasAsuncionDia
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfMaryRotonda1
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosCesarFernandez937857
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSjlorentemartos
 

Último (20)

PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptxPRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
PRIMER SEMESTRE 2024 ASAMBLEA DEPARTAMENTAL.pptx
 
Estrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcciónEstrategia de prompts, primeras ideas para su construcción
Estrategia de prompts, primeras ideas para su construcción
 
30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf30-de-abril-plebiscito-1902_240420_104511.pdf
30-de-abril-plebiscito-1902_240420_104511.pdf
 
Sesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdfSesión de clase: Defendamos la verdad.pdf
Sesión de clase: Defendamos la verdad.pdf
 
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdfResolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
Resolucion de Problemas en Educacion Inicial 5 años ED-2024 Ccesa007.pdf
 
programa dia de las madres 10 de mayo para evento
programa dia de las madres 10 de mayo  para eventoprograma dia de las madres 10 de mayo  para evento
programa dia de las madres 10 de mayo para evento
 
La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.La triple Naturaleza del Hombre estudio.
La triple Naturaleza del Hombre estudio.
 
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADODECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
DECÁGOLO DEL GENERAL ELOY ALFARO DELGADO
 
Herramientas de Inteligencia Artificial.pdf
Herramientas de Inteligencia Artificial.pdfHerramientas de Inteligencia Artificial.pdf
Herramientas de Inteligencia Artificial.pdf
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
 
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 2do Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 2do Grado Educacion Primaria 2024 Ccesa007.pdf
 
Heinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativoHeinsohn Privacidad y Ciberseguridad para el sector educativo
Heinsohn Privacidad y Ciberseguridad para el sector educativo
 
Identificación de componentes Hardware del PC
Identificación de componentes Hardware del PCIdentificación de componentes Hardware del PC
Identificación de componentes Hardware del PC
 
codigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karinacodigos HTML para blogs y paginas web Karina
codigos HTML para blogs y paginas web Karina
 
Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.Clasificaciones, modalidades y tendencias de investigación educativa.
Clasificaciones, modalidades y tendencias de investigación educativa.
 
Registro Auxiliar - Primaria 2024 (1).pptx
Registro Auxiliar - Primaria  2024 (1).pptxRegistro Auxiliar - Primaria  2024 (1).pptx
Registro Auxiliar - Primaria 2024 (1).pptx
 
Manual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdfManual - ABAS II completo 263 hojas .pdf
Manual - ABAS II completo 263 hojas .pdf
 
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdfPlanificacion Anual 4to Grado Educacion Primaria   2024   Ccesa007.pdf
Planificacion Anual 4to Grado Educacion Primaria 2024 Ccesa007.pdf
 
Informatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos BásicosInformatica Generalidades - Conceptos Básicos
Informatica Generalidades - Conceptos Básicos
 
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOSTEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
TEMA 13 ESPAÑA EN DEMOCRACIA:DISTINTOS GOBIERNOS
 

jhon anton 31.184.245 (declaraciones Listas).pdf

  • 1. República bolivariana de Venezuela Instituto universitario de tecnología “Antonio José de sucre” Extensión san Felipe Jhon Anton C.I:31.184.245 Informática (78) 3 Semestre Prof: Naudy Del Valle Albornoz III CORTE 10% DECLARACION DE LISTAS San Felipe, Febrero 2024
  • 2. Conceptos Una lista es una estructura de datos que almacena una colección de elementos en orden. Los elementos de una lista pueden ser de cualquier tipo de datos, como números, cadenas o incluso otros objetos. Características  Orden: Los elementos de una lista se almacenan en un orden específico.  Unicidad: Los elementos de una lista deben ser únicos. No se pueden repetir dos veces el mismo elemento en una lista.  Dinamismo: Las listas son dinámicas, lo que significa que se pueden agregar o eliminar elementos de la lista en cualquier momento. Tipos Hay tres tipos principales de listas:  Listas simples: Las listas simples son el tipo de lista más simple. Consisten en una colección de elementos que están conectados entre sí mediante punteros.  Listas enlazadas doblemente: Las listas enlazadas doblemente son similares a las listas simples, pero cada elemento tiene dos punteros: uno al siguiente elemento y otro al elemento anterior.
  • 3.  Listas circulares: Las listas circulares son un tipo especial de lista en la que el último elemento apunta al primer elemento. Usos de las listas Las listas se utilizan en una amplia variedad de aplicaciones, incluyendo:  Almacenamiento de datos: Las listas se pueden utilizar para almacenar cualquier tipo de datos, como números, cadenas o incluso otros objetos.  Implementación de algoritmos: Las listas se pueden utilizar para implementar una variedad de algoritmos, como el ordenamiento y la búsqueda.  Representación de estructuras de datos: Las listas se pueden utilizar para representar una variedad de estructuras de datos, como árboles y grafos.
  • 4. Listas simples class Nodo: def __init__(self, dato): self.dato = dato self.siguiente = None class ListaSimple: def __init__(self): self.primero = None self.ultimo = None def agregar(self, dato): nuevo_nodo = Nodo(dato) if self.primero is None: self.primero = nuevo_nodo self.ultimo = nuevo_nodo else: self.ultimo.siguiente = nuevo_nodo self.ultimo = nuevo_nodo def recorrer(self): actual = self.primero while actual is not None: print(actual.dato) actual = actual.siguiente # Ejemplo de uso
  • 5. lista = ListaSimple() lista.agregar(10) lista.agregar(20) lista.agregar(30) lista.recorrer() Listas enlazadas class Nodo: def __init__(self, dato): self.dato = dato self.anterior = None self.siguiente = None class ListaEnlazada: def __init__(self): self.primero = None self.ultimo = None def agregar(self, dato): nuevo_nodo = Nodo(dato) if self.primero is None: self.primero = nuevo_nodo self.ultimo = nuevo_nodo else: nuevo_nodo.siguiente = self.primero self.primero.anterior = nuevo_nodo self.primero = nuevo_nodo def recorrer(self):
  • 6. actual = self.primero while actual is not None: print(actual.dato) actual = actual.siguiente # Ejemplo de uso lista = ListaEnlazada() lista.agregar(10) lista.agregar(20) lista.agregar(30) lista.recorrer() Listas circulares class Nodo: def __init__(self, dato): self.dato = dato self.siguiente = None class ListaCircular: def __init__(self): self.primero = None def agregar(self, dato): nuevo_nodo = Nodo(dato) if self.primero is None: self.primero = nuevo_nodo nuevo_nodo.siguiente = self.primero else: actual = self.primero
  • 7. while actual.siguiente != self.primero: actual = actual.siguiente actual.siguiente = nuevo_nodo nuevo_nodo.siguiente = self.primero def recorrer(self): actual = self.primero while actual.siguiente != self.primero: print(actual.dato) actual = actual.siguiente print(actual.dato) # Imprimir el último nodo # Ejemplo de uso lista = ListaCircular() lista.agregar(10) lista.agregar(20) lista.agregar(30) lista.recorrer() Operaciones con listas: Creación: # Lista vacía lista = [] # Lista con elementos lista = [1, 2, 3, 4, 5]
  • 8. # Lista con diferentes tipos de datos lista = ["Hola", 10.5, True] Inserción: # Insertar al final lista.append(6) # Insertar al principio lista.insert(0, "A") # Insertar en una posición específica lista.insert(2, "B") Supresión # Eliminar el último elemento lista.pop() # Eliminar el primer elemento lista.pop(0) # Eliminar un elemento por su posición lista.pop(2) # Eliminar un elemento por su valor lista.remove("B") Algoritmos con listas: 1. Búsqueda lineal: def buscar_lineal(lista, elemento): for i in range(len(lista)):
  • 9. if lista[i] == elemento: return i return -1 # Ejemplo de uso valor = buscar_lineal(lista, "B") if valor != -1: print(f"El elemento se encuentra en la posición {valor}") else: print("El elemento no se encuentra en la lista") 2. Ordenamiento por burbuja: def ordenar_burbuja(lista): for i in range(len(lista) - 1): for j in range(len(lista) - i - 1): if lista[j] > lista[j + 1]: lista[j], lista[j + 1] = lista[j + 1], lista[j] # Ejemplo de uso ordenar_burbuja(lista) print(lista) 3. Invertir lista: def invertir_lista(lista): lista_invertida = [] for i in range(len(lista) - 1, -1, -1): lista_invertida.append(lista[i]) return lista_invertida
  • 10. # Ejemplo de uso lista_invertida = invertir_lista(lista) print(lista_invertida) 4. Eliminar duplicados: def eliminar_duplicados(lista): lista_sin_duplicados = [] for elemento in lista: if elemento not in lista_sin_duplicados: lista_sin_duplicados.append(elemento) return lista_sin_duplicados # Ejemplo de uso lista_sin_duplicados = eliminar_duplicados(lista) print(lista_sin_duplicados)