Алгоритми та структури даних · Senior · Запитання 75 з 75
Чому Array.prototype.indexOf усередині filter - типове приховане O(n²) на code review?
const unique = items.filter((x, i) => items.indexOf(x) === i);- 1
indexOfсортує масив перед пошуком - ✓Правильна відповідь:
indexOfпереглядає масив для кожного елементаfilter - 3
filterкопіює весь масив для кожного елемента
Пояснення
Кожен із n колбеків робить лінійний пошук, тож 10 000 елементів - це до 100 мільйонів порівнянь. [...new Set(items)] робить те саме за O(n). Помічати такі вкладені проходи - типова навичка senior на рев'ю.