Sobes.tech
Junior — Middle

Можете ли објаснити шта је повезани списак и како функционише?

sobes.tech АИ

Одговор од АИ

Povezana lista je struktura podataka koja se sastoji od čvorova, gde svaki čvor sadrži podatke i referencu na sledeći čvor u listi. Za razliku od nizova, povezane liste ne zahtevaju kontinuirani blok memorije i omogućavaju efikasno umetanje i brisanje elemenata.

Glavne vrste povezanih lista:

  • Jednostruko povezana lista: svaki čvor sadrži referencu samo na sledeći čvor.
  • Dvosmerno povezana lista: svaki čvor sadrži reference na sledeći i prethodni čvor.

Primer jednostruko povezane liste u JavaScript (Node.js):

class Node {
  constructor(value) {
    this.value = value;
    this.next = null;
  }
}

class LinkedList {
  constructor() {
    this.head = null;
  }

  add(value) {
    const newNode = new Node(value);
    if (!this.head) {
      this.head = newNode;
    } else {
      let current = this.head;
      while (current.next) {
        current = current.next;
      }
      current.next = newNode;
    }
  }
}

Povezane liste su korisne kada je potrebno dinamički menjati veličinu strukture i često vršiti umetanje/brisanje elemenata.