Skip to content

Commit 00060db

Browse files
committed
Random Sort added
1 parent 423ee2c commit 00060db

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

Sorts/RandomSort.js

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
// Can be used to shuffle the items of an array.
2+
// This algorithm is called Fisher Yates Shuffle.
3+
4+
export default RandomSort = function(arr) {
5+
let n = arr.length;
6+
7+
for (let i = 0; i < n; i++) {
8+
let j = Math.floor((i+1)*Math.random());
9+
let shuffled_arr = arr;
10+
11+
let tmp = shuffled_arr[i];
12+
shuffled_arr[i] = shuffled_arr[j];
13+
shuffled_arr[j] = tmp;
14+
}
15+
16+
return shuffled_arr;
17+
}

0 commit comments

Comments
 (0)