冒泡算法一般用于给定一组无序的数字,对这一组数字进行数组的操作,即交换数组元素的位置,进而得出有序的序列
简易例子,相关js代码:
var num = [8, 7, 6, 5, 4, 3, 2, 1]
for (var i = 0; i < 7; i++) {
for (var j = 0; j < 7 - i; j++) {
if (num[j] > num[j + 1]) {
max = num[j]
num[j] = num[j + 1]
num[j + 1] = max
}
}
}
讲解:冒泡排序就是对n个元素进行n-1轮比较,第j轮进行n-j次比较,每次为两个相邻元素进行比较,将较大的元素放在后面,较小的元素放在前面,如此下去,当第一轮比较执行完后,得出的即为最大的数,第二轮执行完后得出的即为第二大的数,当n-1轮进行完后,n-1个数都已经排序完成,剩余一个数即为最小数。