前端之冒泡排序

这里主要讲排序的思想,关于算法的时间复杂度就不在这讲了。

冒泡排序

思想: 两两依次比较,如果前一个比后一个大,就交换,直到最后,那么,最后一个数就是最大的,交换到没有可以交换的时候,排序结束。
具体步骤:
1、比较相邻的元素,如果第一个比第二个大,交换两个元素的位置;
2、对每一对相邻的元素做同样的工作,直到最后一对,最后的元素会是最大的数;
3、针对除已经排序好的元素重复同样的步骤,直到没有可以交换的元素,排序结束。
动画演示:
图片是随便搜的,如有侵权请联系我删除。
图片是随便搜的,如有侵权请联系我删除

代码:

function sort(arr) {
	for (var i = arr.length - 1; i > 0; i--) {
		for (var j = 0; j < i; j++) {
			if (arr[j] > arr[j + 1]) {
				let k = arr[j];
				arr[j] = arr[j + 1];
				arr[j + 1] = k;
			}
		}
	}
	return arr;
}

最后再强调一下哈,图片要是有侵权一定要联系我删除。

猜你喜欢

转载自blog.csdn.net/Lycoriy/article/details/103726255