一、算法思想
在程序设计中,有时需要对数组中的元素进行排序,这样方便于统计相应信息,在排序方法中,最常用到的有选择排序,冒泡排序,反转排序等,本节介绍冒泡排序。
所谓冒泡排序是指将数组中的元素与其他元素相比较,较小的元素往前放,较大的元素往后放,因其数据在数组中不断向前移动的特点类似于水中的冒泡从底部到顶部,故得名于此。
冒泡排序的基本思想是将相邻元素大小进行对比,将较小的元素往前放,较大的元素往后放,即交换两个元素的位置,在此过程中不断重复直到满足排序要求为止。
二、算法示意图
在Java程序中,冒泡排序采用双层循环进行实现,其中外层循环用以控制排序轮数,内层循环主要用于对比数组中每个临近元素的大小,以确定是否交换位置。在外层循环中,一般循环次数为要排序的数组长度减一,因为最后一次循环数组中只剩下一个元素,不需要对比,同时此时数组中元素的顺序基本已经确定了,对于内层循环而言,对比和交换次数随排序的轮数而减少。下面以一个拥有6个元素的数组排序为例

在图1中,我们选取了一个int a[]={63,4,24,1,