【数据结构】冒泡排序

1、c语言实现

// 算法实现原则
// 例如五个元素,就要排序4趟
// 每趟都是相邻的两个元素再比较
// 每趟都会把最大的那个元素往最后移
void bubbleSort(int arr[], int len){
   for(int j=0;j<len-1;j++){
        int swap;
        for (int  i = 0; i <len-1-j; i++){ // len-1-j 表示前一次最大到那个数已经排到了最后,不需要再加入排序
            swap =  arr[i+1];
            if(arr[i]>arr[i+1]){
                arr[i+1] = arr[i];
                arr[i] = swap;  
            }
        }
   }
}


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);
    bubbleSort(arr,len);
    printf("%s \n","排序后数组 :");
    int i = 0;
    while (i<len){
        printf("%d ",arr[i]);
        i++;
    }
    printf("\n");
    return 0;
}
View Code

猜你喜欢

转载自www.cnblogs.com/jzsg/p/10890464.html
今日推荐