0
点赞
收藏
分享

微信扫一扫

JavaScript数组随机排序


前面已经总结了几种常见的数组排序方法:冒泡排序,选择排序等等。

今天总结一下随机排序,每执行一次函数,对数组进行一次随机性的排序:

JavaScript数组随机排序_数组


代码如下:

/**
* 随机算法
* @param {*} array
*/

import {
swap
} from "../utils/index.js"

function shuffle(array) {
for (let index = 0; index < array.length; index++) {
const randomIndex = Math.floor(Math.random() * (index + 1))
swap(array, index, randomIndex)
}

return array;
}

console.log(shuffle([2,354,4,6.5,8]))

思路:在遍历数组的时候,根据数组的下标来获取一个随机数,该随机数作为随机交换的数组元素下标,再拿当前元素和该随机项交换,从而完成数组的随机排序

交换函数:

function swap(arr, a,) {
[arr[a], arr[b]] = [arr[b], arr[a]]
}


举报

相关推荐

0 条评论