1、冒泡排序:
var arr = [5,2,32,23,12,4,25]; console.log("arr:"+arr);
function bubbleSort(arr){ for (var i=0; i < arr.length - 1; i++) { for (var j=0; j < arr.length-1; j++) { if(arr[j] > arr[j+1]){ var temp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = temp; } } } return arr; }
var arr_new = bubbleSort(arr); console.log("arr_new:"+arr_new);
2、选择排序:
var arr = [34,23,3,12,9,42]; console.log("arr:"+arr);
function selectionSort(arr) { var minIndex,temp; for(var i=0;i<arr.length-1;i++){ minIndex = i; for(var j=i+1;j<arr.length;j++){ if(arr[j]<arr[minIndex]){ minIndex = j; } } temp = arr[i]; arr[i] = arr[minIndex]; arr[minIndex] = temp; } return arr; }
var arr_new = selectionSort(arr); console.log("arr_new:"+arr_new);
3、插入排序:
var arr = [23,52,6,42,12,8,27,37]; console.log("arr:"+arr);
function insertionSort(arr) { var preIndex, current; for(var i=1;i<arr.length;i++){ preIndex = i-1; current = arr[i]; while(preIndex>=0 && arr[preIndex] > current){ arr[preIndex+1] = arr[preIndex]; preIndex--; } arr[preIndex+1] = current; } return arr; }
var arr_new = insertionSort(arr); console.log("arr_new:"+arr_new);