冒泡排序是最基础的一种排序方式,也是初学者必须要掌握的排序方法之一。它的工作原理主要是重复地走过待排序的列表,每次比较两个元素,如果它们的顺序位置不对,则互换两个元素的位置,直到没有一对元素的位置可换,即排序成功。它每次比较都可以确定一个最大(从小到大排序)或者确定一个最小的元素(从大到小),因此可以循环n-1趟即可对n个元素成功进行排序。仔细分析如下:
第一趟,从第一个元素,直到最后一个元素,每两个元素进行比较,得到最大的元素在最后一个位置(从小到大);
第二趟,从第一个元素,直到倒数第二个元素(最后一个元素是最大的),得到次最大的元素;
。。。。。。
第n-1趟,从第一个元素,到第2个元素进行比较,这样全部数据都排序有序。
核心比较代码如下:
for (i = 0; i < n - 1; i++)//趟数,一共是N-1趟
{
for (j = 0; j < n - 1 - i; j+