`
javaFlood
  • 浏览: 10243 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

自己写的标准qsort

阅读更多
#include <stdio.h>

void qsort(int a[], int s, int e) {
    if(s >= e) {
        return;
    }
    int i = s, j = e, t = 0;
    while (i < j) {
        while (i < j && a[j] > a[s]) {
            --j;
        }
        while (i < j && a[i] >= a[s]) {
            ++i;
        }
        t = a[i];
        a[i] = a[j];
        a[j] = t;
    }
    t = a[i];
    a[i] = a[s];
    a[s] = t;
    qsort(a, s, i - 1);
    qsort(a, i + 1, e);
}

#define NUM 10
int main(int argc, char **argv) {
    int a[NUM] = {9, 2, 6, 3, 5, 0, 8, 7, 4, 1};
    qsort(a, 0, NUM - 1);
    for (size_t i = 0; i < NUM; ++i) {
        fprintf(stdout, "%d ", a[i]);
    }
    fprintf(stdout, "\n");
}

//没有编译,如有写错请见谅。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics