冒泡排序Bubble Sort

来源:互联网 发布:淘宝身份证照片删除 编辑:程序博客网 时间:2024/06/06 18:18

冒泡排序算法的运作如下:(从后往前)
1.
比较相邻的元素。如果第一个比第二个大,就交换他们两个。

  1. 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。

  2. 针对所有的元素重复以上的步骤,除了最后一个。

  3. 持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。

这个算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端,故名。

冒泡排序总的平均时间复杂度为O(n^2),是一种稳定的排序算法。

JAVA

public class BubbleSort{    public void sort(int[] a)    {        int temp = 0;        for (int i = a.length - 1; i > 0; --i)        {            for (int j = 0; j < i; ++j)            {                if (a[j + 1] < a[j])                {                    temp = a[j];                    a[j] = a[j + 1];                    a[j + 1] = temp;                }            }        }    }}
0 0
原创粉丝点击