js快速排序的實(shí)現(xiàn)代碼
但是有不少的書本講得并不是很清楚,而且不同的教材的實(shí)現(xiàn)方式也不盡相同,
我這里將最簡單的快速排序的思路寫出來供大家參考。
希望不管是使用什么語言都能從這個簡單的代碼里很方便的掌握快排思路與編寫方式
function quick_sort(list, start, end) {
if (start < end) {
var pivotpos = partition(list, start, end); //找出快排的基數(shù)
quick_sort(list, start, pivotpos - 1); //將左邊的快排一次
quick_sort(list, pivotpos + 1, end); //將右邊的快排一次
}
}
//將一個序列調(diào)整成以基數(shù)為分割的兩個區(qū)域,一邊全都不小于基數(shù),一邊全都不大于基數(shù)
function partition(list, start, end) {
var pivotpos = start;
var pivot = list[start];
var tmp;
for(var i = start + 1; i <= end; i ++) {
if (list[i] < pivot) {
tmp = list[i];
pivotpos += 1;
list[i] = list[pivotpos];
list[pivotpos] = tmp;
}
}
tmp = list[start];
list[start] = list[pivotpos];
list[pivotpos] = tmp;
return pivotpos;
}
var list = [8,2,4,65,2,4,7,1,9,0,2,34,12];
quick_sort(list, 0, list.length);
相關(guān)文章
微信小程序?qū)崿F(xiàn)注冊登錄功能(表單校驗(yàn)、錯誤提示)
這篇文章主要介紹了微信小程序 實(shí)現(xiàn)注冊、登錄功能(表單校驗(yàn)、錯誤提示),本文通過代碼給大家詳細(xì)介紹,需要的朋友可以參考下2019-12-12javascript實(shí)現(xiàn)的一個自定義長度的文本自動換行的函數(shù)。
javascript實(shí)現(xiàn)的一個自定義長度的文本自動換行的函數(shù)。...2007-08-08使用JavaScript為一張圖片設(shè)置備選路徑的方法
在做網(wǎng)頁開發(fā)的時候,有時候希望給圖片設(shè)置一個備選路徑,即,當(dāng)src屬性對應(yīng)的主路徑加載失敗的時候,圖片可以馬上切換到備選路徑,怎么實(shí)現(xiàn)呢?下面通過本文給大家分享JavaScript為一張圖片設(shè)置備選路徑的方法,一起看看吧2017-01-01jsvascript圖像處理—(計算機(jī)視覺應(yīng)用)圖像金字塔
上一篇文章,我們講解了邊緣梯度計算函數(shù),這篇文章我們來了解圖像金字塔;圖像金字塔被廣泛用于計算機(jī)視覺應(yīng)用中;圖像金字塔是一個圖像集合,集合中所有的圖像都源于同一個原始圖像,而且是通過對原始圖像連續(xù)降采樣獲得的2013-01-01小程序短信驗(yàn)證碼頁面實(shí)現(xiàn)demo
這篇文章主要為大家介紹了小程序短信驗(yàn)證碼頁實(shí)現(xiàn)demo,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-11-11Javascript 訪問樣式表實(shí)現(xiàn)代碼
Javascript訪問樣式表--又一篇好文章2009-08-08JS實(shí)現(xiàn)控制表格行內(nèi)容垂直對齊的方法
這篇文章主要介紹了JS實(shí)現(xiàn)控制表格行內(nèi)容垂直對齊的方法,通過javascript的getElementById獲取元素并設(shè)置其相應(yīng)樣式來實(shí)現(xiàn)這一功能,需要的朋友可以參考下2015-03-03