#include #define N 4 int* c=0; void blasort(int* A, int i, int j) { int tmp; if(A[i]>A[j]) { tmp=A[i]; A[i] = A[j]; A[j] = tmp; } if(i+1>j || i+1==j) { return; } int k=(j-i+1)/3; blasort(A,i,j-k); blasort(A,i+k,j); blasort(A,i,j-k); *c++; } int main(int argc, char** argv) { int A[N] = {4,3,2,1}; blasort(A,0,N-1); unsigned int i; for(i=0; i