日期:2014-05-16 浏览次数:20481 次
var values_2 = [10, 6, 20, 33, 2, 5]; function SelectSort(arr) { //选择排序->直接选择排序 var temp; for (var i = 0; i < arr.length; i++) { var k = i; for (var j = i + 1; j < arr.length; j++) { if ((arr[j]) < (arr[k])) k = j; } if (k != i) { temp = arr[i]; arr[i] = arr[k]; arr[k] = temp; } } return arr; } //最高效的排序方法 function QuickSort(arr) { //交换排序->快速排序 if (arguments.length > 1) { var low = arguments[1]; var high = arguments[2]; } else { var low = 0; var high = arr.length - 1; } if (low < high) { // function Partition var i = low; var j = high; var pivot = arr[i]; while (i < j) { while (i < j && arr[j] >= pivot) j--; if (i < j) arr[i++] = arr[j]; while (i < j && arr[i] <= pivot) i++; if (i < j) arr[j--] = arr[i]; } //endwhile arr[i] = pivot; // end function var pivotpos = i; //Partition(arr,low,high); QuickSort(arr, low, pivotpos - 1); QuickSort(arr, pivotpos + 1, high); } else return; return arr; } function BubbleSort(arr) { //交换排序->冒泡排序 var temp; for (var i = 0; i < arr.length; i++) { for (var j = arr.length - 2; j >= i; j--) { if ((arr[j + 1]) < (arr[j])) { temp = arr[j + 1]; arr[j + 1] = arr[j]; arr[j] = temp; } } } return arr; } alert(QuickSort(values_2)); //alert(SelectSort(values_2)); //alert(BubbleSort(values_2));