我的c\c++之旅(五)

来源:互联网 发布:sklearn 数据预处理 编辑:程序博客网 时间:2024/05/29 06:49

计数排序

/* 假设输入元素都是在[0,k]区间内的整数 */void counting_sort(int *imput, int *result, int len, int k){    int *c, i;    c = (int*)malloc(sizeof(int) * k);    for(i = 0; i < k; i++)        c[i] = 0;    for(i = 0; i < len; i++)        c[imput[i]]++;    for(i = 1; i < k; i++)        c[i] = c[i] + c[i-1];    for(i = 0; i < len; i++) {        result[c[imput[i]]-1] = imput[i];        c[imput[i]]--;    }    free(c);}
0 0