Sobes.tech
Junior

Čo je to spojový zoznam (LinkedList)?

sobes.tech AI

Odpoveď od AI

Prepojený zoznam je lineárna dátová štruktúra, v ktorej prvky nie sú uložené v susedných pamäťových bunkách. Namiesto toho každý prvok, nazývaný uzol, obsahuje údaje a odkaz (alebo ukazovateľ) na nasledujúci uzol v sekvencii.

Existujú rôzne typy prepojených zoznamov:

  • Jednoducho prepojený zoznam: Každý uzol obsahuje iba odkaz na nasledujúci uzol.
  • Dvojmo prepojený zoznam: Každý uzol obsahuje odkazy na nasledujúci aj predchádzajúci uzol.
  • Kruhový prepojený zoznam: Posledný uzol odkazuje na prvý, čím vytvára cyklus.

Hlavné operácie nad prepojeným zoznamom:

  • Vloženie: Pridanie nového uzla do zoznamu.
  • Odstránenie: Odstránenie uzla zo zoznamu.
  • Hľadanie: Vyhľadanie uzla podľa hodnoty.
  • Prechádzanie: Sekvenčný prístup ku všetkým uzlom zoznamu.

Výhody:

  • Flexibilita pri vkladaní a odstraňovaní prvkov na ľubovoľnej pozícii.
  • Efektívne riadenie pamäti, pretože prvky nevyžadujú súvislé bloky.

Nevýhody:

  • Pomalý náhodný prístup k prvkom (je potrebný sekvenčný prechod).
  • Vyžaduje sa dodatočná pamäť na uloženie odkazov.

Príklad štruktúry uzla v jednoduchom prepojenom zozname:

class Node {
    int data;
    Node next;

    Node(int data) {
        this.data = data;
        this.next = null;
    }
}