Massivni tasodifiy tartibda saralash Misol
var points = [40, 100, 1, 5, 25, 10];
points.sort(function(a, b){return 0.5 - Math.random()});
O'zingiz sinab ko'ring »
Fisher Yeyts usuli
Yuqoridagi misol, .sort () qatori to'g'ri emas, chunki ba'zi raqamlar boshqalarga nisbatan ustunroq bo'ladi.
Eng mashhur to'g'ri usul Fisher Yates shuffle deb nomlanadi va 1938 yildayoq ma'lumotlar faniga kiritilgan!
JavaScript-da quyidagi usulni tarjima qilish mumkin:
Misol
var points = [40, 100, 1, 5, 25, 10];
for (i = points.length -1; i > 0; i--) {
j = Math.floor(Math.random() * i)
k = points[i]
points[i] = points[j]
points[j] = k
}
O'zingiz sinab ko'ring »
Do'stlaringiz bilan baham: |