C 排序算法 冒泡排序 2020-11-19

目录

 

冒泡排序


冒泡排序

冒泡排序(英语:Bubble Sort)是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序(如从大到小、首字母从A到Z)错误就把他们交换过来。

过程演示:

#include <stdio.h>
​
/*bubble_sort(arr, len)冒泡排序,实现从小到大的排序 2020-11-19*/
void bubble_sort(int arr[], int len) {
    int i, j, temp;
    for (i = 0; i < len - 1; i++)
    /*第一步i=0时,j<13,将最大数89排序到arr[13]*/
    /*第13步i=12时,j<1,将最小数3排序到arr[0]*/
        for (j = 0; j < len - 1 - i; j++)
            if (arr[j] > arr[j + 1]) { //
                temp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = temp;
            }
}
int main() {
    int arr[] = { 22, 34, 3, 32, 82, 55, 89, 50, 37, 5, 64, 35, 9, 70 };
    int len = (int) sizeof(arr) / sizeof(*arr);
    printf("整个数组的字节:%d\r\n", sizeof(arr));
    printf("数组类型所占字节:%d\r\n ", sizeof(*arr));
    printf("数组长度:%d\r\n ", len);
    
    bubble_sort(arr, len);
    int i;
    for (i = 0; i < len; i++)
        printf("%d ", arr[i]);
    return 0;
}

C语言调试工具:

https://www.runoob.com/try/runcode.php?filename=helloworld&type=c

猜你喜欢

转载自blog.csdn.net/qq_40662854/article/details/109817314