题解 | 牛牛的排序

牛牛的排序

https://www.nowcoder.com/practice/26a0c92e9266443887a3bf81aff8e188

#include <stdio.h>
#include <stdlib.h>

// write your code here......

int cmp_int( void* e1, void* e2) {
    return *(int*)e1 - *(int*)e2;  //计算类型
}

int main() {

    int n, i, j, temp;
    scanf("%d",&n);

    int* arr=(int*)malloc(n*sizeof(int));

    for (i = 0; i < n; i++) {
        scanf("%d",&arr[i]);
    }

    #if 0  // select sort
    for(i = 0; i < n; i++) {
        for(j = i + 1; j < n; j++) {
            if(arr[i] > arr[j]) {
                temp = arr[i];
                arr[i] = arr[j];
                arr[j] = temp;
            }
        }
    }
    #elif 0  // bubble sort
    for(i = 0; i < n; i++) {
        for(j = 0; j < n - i -1; j++) {
            if(arr[j] > arr[j + 1]) {
                temp = arr[j];
                arr[j] = arr[j + 1];
                arr[j + 1] = temp;
            }
        }
    }
    #else // quick sort
    qsort(arr, n, sizeof(int), cmp_int);
    #endif


    for (i = 0; i < n; i++) {
        printf("%d ",arr[i]);
    }    


    // write your code here......
    

    free(arr);
    return 0;
}

全部评论

相关推荐

说又不是不能用的斑马...:把中学和居住地删了,很多私企歧视北京人。别写你炒股,hr觉得你炒股赚的比工资高多了,很有可能干不了几天就跑路专职炒股了。只要你不是找金融行业的,这就是个超级减分项
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务