require(['jquery'], function($) {
/**
* @param length 長度
* @param rangeFrom 數字范圍的開始
* @param rangeTo 數字范圍的結束
* @return array
*/
function getArray(length, rangeFrom, rangeTo) {
var tmpArray = [];
for (var i = 0; i < length; i++) {
var tmp = Math.floor((Math.random() * (rangeTo - rangeFrom) + rangeFrom));
tmpArray.push(tmp);
}
return tmpArray;
}
/**
* @param functionName 排序函數
* @param array 數組
* @return string 函數運行時間
*/
function calRunTime(functionName, array) {
var start = new Date().getTime();
functionName(array);
var end = new Date().getTime();
return (end - start) + "ms";
}
/**
* 插入排序(簡化版)
* @param array
* @return array
*/
function insertsort(array) {
var len = array.length;
for (var i = 1; i < len; i++) {
if (array[i] < array[i - 1]) {
var tmp = array[i];
var j = i - 1;
array[i] = array[j];
while (j >= 0 && tmp < array[j]) {
array[j + 1] = array[j];
j--;
}
array[j + 1] = tmp;
}
}
return array;
}
var myArray = getArray(10000, 1, 20);
console.log(myArray);
console.log(calRunTime(insertsort, myArray));
console.log(myArray);
})
js-快速排序
最后編輯于 :
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
推薦閱讀更多精彩內容
- tips:接下去會在github寫博客,簡書不再更新和修改文章,歡迎大家逛逛我的新博客點擊查看 ,我會盡量用更容易...