JavaScript 數組插入元素並排序


1.插入類排序

插入類排序的思想是:在一個已排好序的序列區內,對待排序的無序序列中的記錄逐個進行處理,每一步都講待排序的記錄和已排好的序列中的記錄進行比較,然后有序的插入到該序列中,直到所有待排序的記錄全部插入為止。

(1)直接插入排序(基於順序查找)

思想:每次從無序表中取出第一個元素,把它插入到有序表的合適位置,使有序表仍然有序。

第一趟比較前兩個數,然后把第二個數按大小插入到有序表中;

第二趟把第三個數據與前兩個數從后向前掃描,把第三個數按大小插入到有序表中;

依次進行下去,進行了(n-1)趟掃描以后就完成了整個排序過程。

效率:

時間復雜度:平均O(n^2),不適合對於數據量比較大的排序應用。

空間復雜度:O(1)

穩定性:穩定

js代碼:

 function sort(elements){ for(var i = 1; i < elements.length; i++){ if(elements[i] < elements[i-1]){ var guard = elements[i]; var j = i - 1; elements[i] = elements[j]; while(j >= 0 && guard < elements[j]){ elements[j+1] = elements[j]; j--; } elements[j+1] = guard; } } }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM