基本思想:
将序列中的第1个元素与第2个元素进行比较,若前者大于后者,则将第1个元素与第2个元素进行位置交换,否则不换。
再将第2个元素与第3个元素进行比较,同样若前者大于后者,则将第2个元素与第3个元素进行位置交换,否则不换。
以此类推,直到将第n-1个元素与第n个元素进行比较为止。
这个过程称为第1趟冒泡排序。经过第1趟冒泡排序后,将长度为n的序列中最大的元素置于了序列的尾部,即第n个位置上。
然后再对剩下的n-1个元素做同样的操作,这叫做第2趟冒泡排序。经过了第2趟的冒泡排序,将剩下的n-1个元素中最大的元素置于了序列的n-1的位置上。
如此进行下去,当执行完第n-1趟的冒泡排序后,就可以将序列中剩下2个元素中的最大的元素置于了序列的第2个位置上。第1个位置上的元素就是该序列中最小
的元素。 这样冒泡排序完成。
元素序列 {3,6,4,2,11,10,6} 的冒泡排序过程如下
初始状态:{3,6,4,2,11,10,6}
第1趟排序:{3,4,2,6,10,6,11}
第2趟排序:{3,2,4,6,6,10,11}
第3趟排序:{2,3,4,6,6,10,11}