关于JavaScript数组中的冒泡排序

冒泡排序:是一种算法,把一系列的数据按照一定的顺序进行排列显示(从小到大或者从大到小)

1.例如:数组中有[5,4,3,2,1],想让它变成[1,2,3,4,5]
过程是:
第一次5跟4比较,4比他小就会换成[4,5,3,2,1],然后5在跟3比较,发现3也比他小,继续换个位置…依次类推,直到5到最后,没有与它比较的[4,3,2,1,5]。
第二次4跟后面的比较…[3,2,1,4,5]
第三次3跟后面的比较…[2,1,3,4,5]
第四次2跟后面的比较…[1,2,3,4,5]
这样就完成了排序的顺序
这样我们可以得出规律,第一次交换了4次,第二次交换了3次,第三次交换了2次,第四次交换了1次。

这样我们用代码来展示一下

<script>
	var arr = [5,4,3,2,1]//arr.length是数组中的索引号,从0开始
	for(var i=0;i<=arr.length -1;i++) {
    
    //外层循环负责趟数
		for(var j=0;j<=arr.length - i-1;j++){
    
    //内部循环是没趟里面的次数
			if(arr[j] >arr[j+1]){
    
     //将>改成<就会从大排下来
			var temp = arr[j];
			arr[j] = arr[j+1];
			arr[j+1] = temp;
			}
		}
	}
	console.log(arr)
</script>

打印出来的正好是我们所需要的排序 数组数据可以随意打乱,最后依然会得到一样的内容,这就是冒泡排序,你看懂了嘛!
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_45054614/article/details/107592147