Как перемешать элементы массива js
4 года назад
Человек-Молекула
Ответы
Простой способ перемешать массив:
array = array.sort(() => Math.random() - 0.5)
Правильный способ — использовать алгоритм тасования Фишера — Йетса:
const shuffle = (array) => {
let m = array.length, t, i;
// Пока есть элементы для перемешивания
while (m) {
// Взять оставшийся элемент
i = Math.floor(Math.random() * m--);
// И поменять его местами с текущим элементом
t = array[m];
array[m] = array[i];
array[i] = t;
}
return array;
}4 года назад
Aleksandr Litvinov
Есть еще один способ для перемешивания элементов массива. Он не очень удачный и является не очень эффективным, поэтому рассмотрим его только в качестве примера.
Напишем собственную функцию для перетасовки элементов массива.
Самый оптимальный способ для перемешивания элементов массива - это алгоритм тасования Фишера — Йетса, он рассмотрен выше.
3 года назад
Виктория Аблаева
108813 г. Москва, вн.тер.г. поселение Московский,
г. Московский, ул. Солнечная, д. 3А, стр. 1, помещ. 20Б/3
ОГРН 1217300010476
ИНН 7325174845





