程序员

冒泡排序

2017-08-14  本文已影响30人  半天妖

冒泡排序是一种最简单的排序算法。顾名思义,就是每次排序之后,最大的元素会像气泡浮出水面一样移动到最后的位置,每一次循环都能确定一个序列中的最大元素。

算法思想:

  1. 比较相邻的两个元素,如果第一个比第二个大,就交换
  2. 对每一对相邻的两个元素执行同样的操作,从开始执行到最后,这一步做完之后,最后的元素将是最大的元素
  3. 对前面n-1个元素执行1,2两步
  4. 重复执行前面步骤,直到没有一对元素需要比较交换

算法代码

void bubbleSort(int array[], int length)  
{  
    int i, j, tmp;
    if (1 >= length)
    return;
    for (i = length-1; i > 0; i--) {
        for (j = 0; j < i; j++) {
            if (array[j] > array[j+1]) { 
                tmp = array[j];
                array[j] = array[j+1];
                array[j+1] = tmp;
            }
        }
    }
}

算法分析

过程展示

bubble-sort.gif
上一篇下一篇

猜你喜欢

热点阅读