JSFiddle - React, Tailwind, and code Playground
by BurpmanJunior
Babel + JSX
/**
* Quicksort
*/
console.clear();
let len = 100,
min = 0,
max = 100;
let arr = Array.apply(null, Array(len)).map(() => { return min + Math.floor(Math.random() * (max - min)); });
console.log(arr);
class quicksort{
constructor(_arr){
this.arr = _arr;
this.sort_max = 10;
console.log(this.sort_partition(this.arr));
return this.arr;
}
sort_partition(range){
let partition_index = Math.floor(Math.random() * (range.length - 1));
let partition_value = range[partition_index];
let a = range.slice(0, partition_index),
_a = [],
b = range.slice(partition_index, range.length - 1),
_b = [];
a.forEach((n) => {
(n < partition_value ? _a : _b).push(n);
});
b.forEach((n) => {
(n < partition_value ? _a : _b).push(n);
});
return [_a, partition_value, _b];
}
}
// Standard sort
//arr = arr.sort((a, b) => { return a - b; });
console.log(new quicksort(arr));