diff --git a/other/fisher_yates.rb b/other/fisher_yates.rb new file mode 100644 index 0000000..c28d429 --- /dev/null +++ b/other/fisher_yates.rb @@ -0,0 +1,12 @@ +# Fisher and Yates Shuffle is one of the simplest and most popular shuffling algorithm +def fisher_yates_shuffle(array) + n = array.length + while n > 0 + i = rand(n-=1) + array[i], array[n] = array[n], array[i] + end + return array +end + +arr = [1, 2, 40, 30, 20, 15, 323, 12, 3, 4] +puts fisher_yates_shuffle(arr) \ No newline at end of file