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];
javascript数组对象var j = i - 1;
elements[i] = elements[j];
while(j >= 0 && guard < elements[j]){
elements[j+1] = elements[j];
j--;
}
elements[j+1] = guard;
}
}
}
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论