冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。
JavaScript中实现冒泡排序的思路:
数组中有 n 个数,比较每相邻两个数,如果前者大于后者,就把两个数交换位置;这样一来,第一轮就可以选出一个最大的数放在最后面;那么经过 n-1(数组的 length - 1) 轮,就完成了所有数的排序。
JavaScript实现冒泡排序的代码:
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>冒泡排序</title>
</head>
<body>
<script>
//思路:先比较一轮一次,然后用for循环比较一轮多次,然后再加for循环比较多轮多次
//从大到小排序
var array=[10,20,9,8,79,65,100];
//比较轮数
for ( var i=0;i<array.length-1;i++){
//每轮比较次数,次数=长度-1-此时的轮数
for (var j=0;j<array.length-1-i;j++) {
if (array[j] > array[j + 1]) {
var temp = array[i];
array[j] = array[j + 1];
array[j + 1] = temp;
} //end if
}//end for 次数
} //end for 轮数
console.log(array);
</script>
</body>
</html>
默认排序方法:默认排序是根据UniCode码的顺序排序;升序排列;降序排列;按照数组对象的某个属性值排序
一般情况咱们排序大都按数字或字母顺序,但也有一些情况下,咱们可能需要自定义排序顺序。在此之前先简单介绍一下 reduce 方法:
学习一下排序算法中的快速排序!快速排序和冒泡排序差不多,都是通过比较元素的大小,然后进行相应的交换,不过快速排序的效率要比冒泡排序高的多,因为它将一个整体一分二,二分四 ,然后每个小整体再进行比对交换这样效率会大大提高
sort() 方法是最强大的数组方法之一。sort() 方法以字母顺序对数组进行排序:reverse() 方法反转数组中的元素。您可以使用它以降序对数组进行排序:
一般情况咱们排序大都按数字或字母顺序,但也有一些情况下,咱们可能需要自定义排序顺序。在此之前先简单介绍一下 reduce 方法:
冒泡排序:车轮战,两两比较,小的靠前,特点:1、轮数:共比较了 length -1 次,2、每轮中比较的次数:随着轮数的增加,次数反而减少
此博客主要介绍JavaScript中sort()排序的使用方法,也进一步讲述了:当排序的值存在null、undefined、0这三个特殊值时,解决排序混乱的方法,并结合自己的理解来阐述解决方法的原理。
内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!