冒泡排序

冒泡排序是一种交换逆序元素进行的排序方法,思想就是两两比较待排序的元素关键字来调整相邻的元素,次序相反时就进行交换,直到没有逆序的元素出现为止。

冒泡排序_第1张图片

 

void BubbleSort(List* L)    //冒泡排序

{

    int i, j, temp;  //定义变量

    for (i = 0; i < n-1; i++)   //有n-1趟排序

    {

       for (j = 1; j <= max - i - 1; j++)   //比较次数

           if (L->data[j] > L->data[j + 1])  //如比较相邻的两个元素的大小,然后交换

           {

              temp = L->data[j];

              L->data[j] = L->data[j+1];

              L->data[j + 1] = temp;

           }

    }

}

时间复杂度:平均时间复杂度是O(n^2)

你可能感兴趣的:(冒泡排序)