/**
* created by administrator on 2017/5/26.
*//*
氣泡排序:外層迴圈控制比較次數,
內層迴圈控制arr[i]和arr[i+1]的大小,並判斷arr[i]和arr[i+1]是否需要交換
*/var arr=[2,4,3,1,5,7,6];
function
bubblesort
(arr)}}
return arr
}console.log('這是氣泡排序演算法'+bubblesort(arr))
/*插入排序:原理:arr[p]和t比較之前,0~i-1的元素已經排好序了,只需要把t插入合適的位置即可。
step1:取出arr[i]的值,儲存在t中,並把t放在擂台上;
step2:定義p=i-1,通過迴圈比較變數arr[p]和定值t的大小,來判斷arr[p]和arr[p+1]是否需要交換位置。
step3:如果arr[p]>t,則需要arr[p]要和arr[p+1]交換位置,然後p--;繼續比較arr[p]和t的大小
如果arr[p]function
insertsort
(arr)
if(arr[p]>t)}}
return arr;
}console.log('這是插入排序演算法'+insertsort(arr))
/*快速排序:把陣列分為兩份和中間值c,比較陣列中的元素和中間值c的大小,依次迭代拼接
當分組的length小於1時,則沒有必要排序。
*/function
quicksort
(arr)else}}
return quicksort(left).concat(c,quicksort(right));
}console.log('這是快速排序演算法'+quicksort(arr));
Javascript實現對Json陣列排序
一 適用於數字排序和字元排序 最簡單的一種 var sortby function filed,rev,primer if a b if a b return 1 var obj 數字排序 obj.sort sortby b false,parseint console.log obj 字元排序 o...
JavaScript 如何實現陣列的隨機排序?
第一種方法。math.random 返回介於 0 包含 1 不包含 之間的乙個隨機數。這種方法是迴圈過程中通過math.random 函式產生的隨機值,在陣列中這個隨機值位置的數和arr i 位置的資料交換,迴圈結束,產生隨機數組。第二種方法。splice 方法用於插入 刪除或替換陣列的元素。注意 ...
二種快排穩定實現
三路快排 void quicksort int a,intleft,intright i 工作指標 j從左向右不斷掃瞄,找大於或者等於錨點元素的元素 while left j a j pivot j 如果兩個工作指標 i j相遇則一趟遍歷結束 if i j break 將左邊大於 pivot 的元素...