>>566
クイックソートはwikiに無いみたいなので暇つぶしにフルスクラッチで作ってみた
low, highはソート範囲のインデックスの最小値、最大値

#define swap(x, y) do { int t = x; x = y; y = t; } while(0)

void qsort(int data[], int low, int high)
{
        int i, j, k;
        int piv;

        i = low;
        j = high;
        k = (low + high) / 2;
        piv = data[k];
        while(i <= j) {
                while(data[i] < piv) ++i;
                while(data[j] > piv) --j;
                if(i > j) break;
                swap(data[i], data[j]);
                ++i;
                --j;
        }

        if(j > low) qsort(data, low, j);
        if(high > i) qsort(data, i, high);
}