bogosort
Version:
The well known Bogosort sorting algorithm for JavaScript
2 lines • 928 B
JavaScript
!function(root,factory){"function"==typeof define&&define.amd?define([],factory):"object"==typeof module&&module.exports?module.exports=factory():root.returnExports=factory()}(this,function(){var sorted=function(array){for(var i=array.length;--i;)if(array[i-1]>array[i])return!1;return!0},random=function(max){return Math.floor(Math.random()*(max+1))},shuffle=function(array){for(var targetIndex,delta,dest=array.slice(),index=dest.length;--index;)targetIndex=random(index),delta=dest[targetIndex],dest[targetIndex]=dest[index],dest[index]=delta;return dest},_bogosort=function(array){var data={result:void 0,rounds:0};if(!array)return data;if(!array.length)return data.result=[],data;for(data.result=array;!sorted(data.result);)data.result=shuffle(data.result),data.rounds++;return data},bogosort=function(array){return _bogosort(array).result};return bogosort.measure=_bogosort,bogosort});
//# sourceMappingURL=bogosort.js.map