本文实例讲述了基于JavaScript实现的快速排序算法。分享给大家供大家参考,具体如下:
首先要介绍一下,冒泡排序的过程很简单,。
通过分析可以得出,冒泡排序的时间复杂度为<强> O (n2) 强>。
快速排序是对冒泡排序的一种改进,它是处理大数据集最快的排序之一,这个算法首先要选择一个基准值,围绕基准值进行。
示例如下:
<强>算法思想>强如下:
我们通过js实现代码如下:
& lt; !DOCTYPE html> & lt; html lang=癳n”比; & lt; head> & lt;元charset=皍tf - 8”比; & lt; title> JavaScript快速排序& lt;/title> & lt;/head> & lt; body> & lt;脚本type=" text/javascript祝辞 函数qSort (num){//快速排序 如果(nums.length==0) { 返回[]; } var较?[]; var大=[]; var主=num[0];//选择基准元素 (var i=1; i< nums.length;我+ +){ 如果(num[我]& lt;主){//分成两个之序列 lesser.push (num[我]); 其他}{ greater.push (num[我]); } } 返回qSort(小).concat(主qSort(更大的));//递归 } 函数显示(num){//显示数组 我(var=0; i< nums.length;我+ +){ 文档。写(num[我]+ '); } document . write (' & lt; br> '); } var num=(68, 80, 80, 95, 70, 79, 27日,88年,93年); 显示(num);//newNums var newNums=qSort (num);//希尔排序 显示(newNums);//0 0 2 3 4 5 5 6 8 9 & lt;/script> & lt;/body> & lt;/html> >之前就平均时间而言,快速排序是目前被认为最好的一种内部排序方法。快速排序非常适用于大型数据集合,在处理小数据集时性能反而会下降。其时间复杂度为<强> O (nlog2n) 强>
更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript数据结构与算法技巧总结》,《JavaScript数学运算用法总结》,《JavaScript排序算法总结》,《JavaScript遍历算法与技巧总结》,《JavaScript查找算法技巧总结》及《JavaScript错误与调试技巧总结》
希望本文所述对大家JavaScript程序设计有所帮助。
基于JavaScript实现的快速排序算法分析