js数组快速排序


<script type="text/javascript">
var arr = [1, 2, 3, 54, 22, 1, 2, 3];
function quick(arr) {
if (arr.length <= 1)
return arr;
var proiindex = Math.floor(arr.length / 2);
var proift = arr.splice(proiindex, 1)[0]; //找基准,并把基准从原数组删除
var left = [];
var right = [];
for (var i = 0; i < arr.length; i++) {
if (arr[i] <= proift) {
left.push(arr[i]);
} else {
right.push(arr[i]);
}
}
return quick(left).concat([proift], quick(right));
}
document.write(quick(arr));
</script>


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM