Алгоритми та структури даних · Senior · Запитання 38 з 75
Що дає структурне спільне використання (structural sharing) у персистентних структурах даних?
- 1Дані діляться між потоками без жодних витрат на синхронізацію
- 2Усі версії ділять одну змінну копію, що блокується на запис
- ✓Правильна відповідь: Нові версії повторно використовують незмінені частини, тож оновлення не копіює все
Пояснення
Оновлення одного листа дерева копіює лише шлях до кореня, O(log n), а старі версії лишаються дійсними. На цьому тримаються іммутабельні оновлення в Redux, Immer і колекціях Clojure; це ще й робить дешевими перевірки змін через ===.