Sobes.tech
Junior — Middle

El tudnád magyarázni, mi az az egysoros láncolt lista, és hogyan valósítják meg Pythonban?

sobes.tech MI

Válasz az MI-től

Egyszerű láncolt lista egy olyan adatszerkezet, amely csomópontokból áll, ahol minden csomópont tartalmaz adatokat és egy hivatkozást a lista következő csomópontjára. A tömbtől eltérően az elemek nem egymás melletti memóriaterületen vannak tárolva, ami hatékony beszúrást és törlést tesz lehetővé.

Példa egy egyszerű láncolt lista Pythonban:

class Csomópont:
    def __init__(self, adatok):
        self.adatok = adatok
        self.következő = None

class EgyszerűLáncoltLista:
    def __init__(self):
        self.feje = None

    def hozzáad(self, adatok):
        új_csomópont = Csomópont(adatok)
        if not self.feje:
            self.feje = új_csomópont
            return
        aktuális = self.feje
        while aktuális.következő:
            aktuális = aktuális.következő
        aktuális.következő = új_csomópont

    def lista_kiírása(self):
        aktuális = self.feje
        while aktuális:
            print(aktuális.adatok, end=' -> ')
            aktuális = aktuális.következő
        print('None')

# Használat
sll = EgyszerűLáncoltLista()
sll.hozzáad(1)
sll.hozzáad(2)
sll.hozzáad(3)
sll.lista_kiírása()  # Kimenet: 1 -> 2 -> 3 -> None