{A}
AlgoViz
首页
路线图
题单
教程
题目
可视化
错题本
进度
登录
加载中…
Fisher-Yates 洗牌
均匀洗牌:从后往前,与前面随机位置交换。
重新洗牌
速度:
0.5x
1x
2x
4x
1
2
3
4
5
6
7
8
Fisher-Yates 洗牌:从后往前,与前面随机位置交换
步骤 1 / 16
Fisher-Yates 洗牌:从后往前,与前面随机位置交换
算法代码
复制代码
当前高亮行:
1
(Fisher-Yates 洗牌:从后往前,与前面随机位置交换)
1
function
shuffle(arr) {
2
for
(i = arr.length-
1
; i >
0
; i--) {
3
j = random(
0
, i);
4
swap(arr[i], arr[j]);
5
}
6
return
arr;
7
}