#include <stdio.h>

void iswap(int xx[], int i, int j);

void qckisort(int xx[], int left, int right)
{
  int    i,j;
  int    pivot;

  i=left;
  j=right;
  pivot=xx[(left+right)/2];

  while(1){
    while(xx[i]<pivot) i++;
    while(pivot<xx[j]) j--;
    if(i>=j) break;
    iswap(xx,i,j);
    i++;
    j--;
  }

  if(left<i-1) qckisort(xx,left,i-1);
  if(j+1<right) qckisort(xx,j+1,right);

}

void iswap(int xx[], int i, int j)
{
  int temp;
  
  temp=xx[i];
  xx[i]=xx[j];
  xx[j]=temp;
}
