in core/src/main/resources/org/apache/karaf/webconsole/core/behavior/dracula/dracula_algorithms.js [378:391]
function quickSort(arr) {
/* recursion anchor: one element is always sorted */
if(arr.length <= 1) return arr;
/* randomly selecting some value */
var median = arr[Math.floor(Math.random() * arr.length)];
var arr1 = [], arr2 = [], arr3 = [];
for(var i in arr) {
arr[i] < median && arr1.push(arr[i]);
arr[i] == median && arr2.push(arr[i]);
arr[i] > median && arr3.push(arr[i]);
}
/* recursive sorting and assembling final result */
return quickSort(arr1).concat(arr2).concat(quickSort(arr3));
}