#include<stdio.h>
#include <stdlib.h>
#include <memory.h>
int main(void)
{
int a[7] = {7,8,1,5,2,3,4};
int i=0,j=7-1;
int k =0;
int key = a[0];
int tmp = 0;
while(i < j)
{
while(j>=0 && i<j)
{
if(a[j]<key)
{
tmp = a[i];
a[i] = a[j];
a[j] = tmp;
i++;
break;
}
j--;
}
while(i<7 && i<j)
{
if(a[i]>key)
{
tmp = a[i];
a[i] = a[j];
a[j] = tmp;
j--;
break;
}
i++;
}
}
for (k=0;k<7;k++)
{
printf("%d ",a[k]);
}
return 0;
}
#include<stdio.h>
#include <stdlib.h>
#include <memory.h>
int change(int a[],int i,int j)
{
int key = a[i];
int tmp = 0;
while(i < j)
{
while(j>=0 && i<j)
{
if(a[j]<key)
{
tmp = a[i];
a[i] = a[j];
a[j] = tmp;
i++;
break;
}
j--;
}
while(i<7 && i<j)
{
if(a[i]>key)
{
tmp = a[i];
a[i] = a[j];
a[j] = tmp;
j--;
break;
}
i++;
}
}
return i;
}
void change1(int a[],int i,int j)
{
int pivottag = 0;
if (i<j)
{
pivottag = change(a,i,j);
change1(a,pivottag+1,j);
change1(a,i,pivottag-1);
}
}
int main(void)
{
int a[7] = {7,8,1,5,2,3,4};
int i=0,j=7-1;
int k =0;
change1(a,0,6);
for (k=0;k<7;k++)
{
printf("%d ",a[k]);
}
return 0;
}