用javascript选择经典排序算法

用javascript选择经典排序算法
一个最稳定的排序算法,无论什么数据,它的时间复杂度为O(nsup2)。因此,当它被使用时,数据规模越小越好,唯一的好处可能是没有额外的内存空间

1)算法原理
首先,找到最小(大)的排序序列元素并将其存储到排序序列的起始位置。然后,继续寻找最小(大)从剩余的无序的元素,然后放在有序序列结束。以此类推,直到所有元素排序。
2)算法描述与实现
n个记录的直接选择可以通过n-1次的直接选择来排序,具体的算法描述如下:

初始状态:无序区域为r 1…},有序区域为空。

在我Wade秩序的开始(我= 1,2,3…N-1),当前的有序与无序的区域R { 1 }和R(即:I-1。N),分别。排序算法的选择从当前无序区的最小记录K R { },并与无序区第一个记录R交流,使R { 1 }和我R {我+ 1 ..成为新的有序区,记录的数量分别增加1,记录的数量,从而降低了1新的无序区。

在n-1行程结束时,数组被命令

3)Javascript代码实现

功能选择排序(ARR){
VaR len = arr.length;
var指数;
对于(var i = 0;i < len-1;i++){
索引= i;
对于(var j = i + 1;j;<;j + +){
如果(ARR { } { },<< ARR指标)找到{ / /最低数量
索引;保存小数索引
}
}
温度= ARR {我};
ARR {我} = { }度指数;
ARR { } =温度指数;
}
报酬;
}

var arr = { 1,45,37,5,48,15,37,26,29,2,46,4,17,50,52 };
console.log(选择排序(ARR));

4)算法分析
最佳情况:t(n)=o(n2)

最坏情况:t(n)=o(n2)

平均数:t(n)=o(n2)

以上是本文的全部内容,希望能对您有所帮助,希望大家多多支持
免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部