Алгоритми та структури даних · Senior · Запитання 18 з 75

Що не так із перемішуванням масиву через arr.sort(() => Math.random() - 0.5)?

Пояснення

Алгоритми сортування розраховують на узгоджений компаратор; випадкові відповіді роблять деякі перестановки значно ймовірнішими, залежно від рушія. Фішер-Єйтс міняє кожну позицію з випадковою попередньою за O(n) і дає рівномірний розподіл.

Де почитати

Помилка в запитанні

Алгоритми та структури даних · Senior · запитання 18

Перевірте себе

Пройдіть тест Алгоритми та структури даних · Senior: запитання й варіанти перемішуються, а наприкінці - розбір помилок.

Пройти цей тест