Què és una Llista?
Una llista és una col·lecció ordenada d'elements, on cada element ocupa una posició específica. Les llistes són una de les estructures de dades més bàsiques i fonamentals en programació, utilitzades per emmagatzemar i gestionar col·leccions d'elements de manera eficient.
Característiques de les Llistes
- Ordenades: Els elements en una llista tenen una posició específica.
- Indexades: Cada element en una llista es pot accedir mitjançant un índex.
- Mutable: Les llistes poden canviar de mida i els seus elements poden ser modificats.
Tipus de Llistes
Hi ha diversos tipus de llistes, cadascuna amb les seves pròpies característiques i usos. A continuació, es presenten els tipus més comuns:
- Llistes Enllaçades: Cada element (o node) conté un valor i una referència (o enllaç) al següent element de la llista.
- Llistes Doblement Enllaçades: Similar a les llistes enllaçades, però cada node conté una referència tant al següent com al node anterior.
- Llistes Circulars: Una variació de les llistes enllaçades on l'últim node apunta al primer node, formant un cercle.
Avantatges i Desavantatges de les Llistes
Avantatges
- Flexibilitat: Les llistes poden créixer i reduir-se dinàmicament.
- Facilitat d'ús: Les operacions d'inserció i eliminació són relativament senzilles.
Desavantatges
- Accés Lent: Accedir a un element en una llista enllaçada pot ser lent, ja que pot requerir recórrer tota la llista.
- Ús de Memòria: Les llistes enllaçades poden consumir més memòria a causa dels enllaços addicionals.
Operacions Bàsiques amb Llistes
Les operacions més comunes que es poden realitzar amb llistes inclouen:
- Inserció: Afegir un element a la llista.
- Eliminació: Treure un element de la llista.
- Accés: Accedir a un element en una posició específica.
- Recorregut: Recórrer tots els elements de la llista.
Exemple de Codi en Python
A continuació es presenta un exemple bàsic d'una llista en Python i algunes operacions bàsiques:
# Creació d'una llista llista = [1, 2, 3, 4, 5] # Inserció d'un element llista.append(6) print("Després de la inserció:", llista) # Eliminació d'un element llista.remove(3) print("Després de l'eliminació:", llista) # Accés a un element element = llista[2] print("Element en la posició 2:", element) # Recorregut de la llista for elem in llista: print(elem)
Explicació del Codi
- Creació d'una llista:
llista = [1, 2, 3, 4, 5]
crea una llista amb cinc elements. - Inserció d'un element:
llista.append(6)
afegeix l'element6
al final de la llista. - Eliminació d'un element:
llista.remove(3)
elimina el primer element3
que troba a la llista. - Accés a un element:
element = llista[2]
accedeix a l'element en la posició2
(tercer element). - Recorregut de la llista: El bucle
for
recorre i imprimeix cada element de la llista.
Conclusió
Les llistes són una estructura de dades fonamental en programació, oferint una manera flexible i eficient de gestionar col·leccions d'elements. Comprendre les operacions bàsiques i els diferents tipus de llistes és essencial per a qualsevol programador. En els següents temes, explorarem més a fons les llistes enllaçades, dobles i circulars, així com les seves implementacions i aplicacions pràctiques.
Curs d'Estructures de Dades
Mòdul 1: Introducció a les Estructures de Dades
- Què són les Estructures de Dades?
- Importància de les Estructures de Dades en la Programació
- Tipus d'Estructures de Dades
Mòdul 2: Llistes
- Introducció a les Llistes
- Llistes Enllaçades
- Llistes Doblement Enllaçades
- Llistes Circulars
- Exercicis amb Llistes
Mòdul 3: Piles
- Introducció a les Piles
- Operacions Bàsiques amb Piles
- Implementació de Piles
- Aplicacions de les Piles
- Exercicis amb Piles
Mòdul 4: Cues
- Introducció a les Cues
- Operacions Bàsiques amb Cues
- Cues Circulars
- Cues de Prioritat
- Exercicis amb Cues
Mòdul 5: Arbres
- Introducció als Arbres
- Arbres Binàries
- Arbres Binàries de Cerca
- Arbres AVL
- Arbres B
- Exercicis amb Arbres
Mòdul 6: Grafs
- Introducció als Grafs
- Representació de Grafs
- Algoritmes de Cerca en Grafs
- Algoritmes de Camins Mínims
- Aplicacions dels Grafs
- Exercicis amb Grafs