Skip to main content

Яка складність вставки на початок списку?

Складність вставки на початок зв'язаного списку - O(1) (постійна).


Чому так

Щоб додати елемент на початок списку, не потрібно проходити весь список. Достатньо:

  1. Створити новий вузол.
  2. Вказати, що його next (посилання на наступний) = старий head.
  3. Перемістити head на цей новий вузол.

Приклад:

javascript
До: head → [10][20][30] Після вставки 5: head → [5][10][20][30]

Ці три кроки займають постійний час, незалежно від довжини списку.


Формально

ОпераціяСкладність
Вставка на початокO(1)
Вставка в серединуO(n) - потрібно дійти до потрібної позиції
Вставка в кінецьO(1), якщо є tail; інакше O(n)

Чому це важливо

Це одна з головних переваг зв'язаних списків перед масивами:

  • У масиві вставка на початок вимагає зсунути всі елементи → O(n).
  • У списку достатньо змінити пару посилань → O(1).

Підсумок:

Вставка нового елемента на початок зв'язаного списку виконується за O(1), тому що потрібно лише переназначити одне посилання head - без обходу решти вузлів.

Коротка відповідь

Для співбесіди
Premium

Коротка відповідь допоможе вам впевнено відповідати на цю тему під час співбесіди.