标签:
快速排序是一种分而治之的算法,通过递归的方式将数据依次分解为包含较小元素和较大元素的不同子序列。该算法不断重复这个步骤知道所有的数据都是有序的。
<!DOCTYPE html> <html> <head> <title></title> </head> <body> <script> var quickSort = function (arr){ if (arr.length == 0){ return []; } var lesser = []; var greater = []; var pivot = arr[0]; for (var index = 1; index < arr.length; index++){ if (arr[index] < pivot){ lesser.push(arr[index]); } else { greater.push(arr[index]); } } return quickSort(lesser).concat(pivot, quickSort(greater)); }; </script> </body> </html>
var arr = []; for (var index = 0; index < 10; ++index){ arr[index] = Math.floor((Math.random() * 100) + 1); } console.log("排序前。。。。"); console.log(arr); console.log("排序后"); console.log(quickSort(arr));
标签:
原文地址:http://www.cnblogs.com/duhuo/p/5091132.html