Введение

Связный список — это важная линейная структура данных, которая используется для динамического распределения памяти. В отличие от массивов данные в связанном списке не хранятся в непрерывной ячейке памяти, а каждый элемент содержит ссылку на его следующий элемент.

Давайте код

Давайте посмотрим, как реализовать связанный список в javascript —

class NodeList {
    constructor(data) {
        this.data = data;
        this.next = null;
    }
}
class LinkedList {
    constructor() {
        this.data = null;
    }
    add(data) {
        const node = new NodeList(data);
        if (this.data == null) {
            this.data = node;
        } else {
            let root = this.data;
            while (root.next != null) {
                root = root.next;
            }
            root.next = node;
        }
    }
}
const list = new LinkedList();
list.add(5);
list.add(3);
list.add(9);

Логика приведенного выше кода -

  • если в корневых данных связанного списка нет элемента, добавьте предоставленный элемент в качестве корневых данных.
  • иначе найдите последний корневой элемент, следующее значение которого равно нулю, а затем добавьте элемент в следующий.