#include <stdio.h>
void swap(int *p, int i, int j)
{
int temp = p[i];
p[i] = p[j];
p[j] = temp;
}
void cockTailSort(int *p, int n)
{
int left = 0;
int rigth = n -1;
int i, j;
while (left < rigth)
{
for(i = left; i < rigth; i++)
{
if(p[i] > p[i+1])
swap(p, i, i+1);
}
rigth--;
for (i = rigth; i > left; i--)
{
if (p[i-1] > p[i])
swap(p, i -1, i);
}
left++;
}
}
int main(int argc, const char * argv[])
{
int p[] = {4, 2, 7, 1, 9, 3};
int i;
int n = sizeof(p)/sizeof(int);
printf("鸡尾酒排序:\n ");
cockTailSort(p, n);
for(i = 0; i < sizeof(p)/sizeof(int); i++)
{
printf("%d ", p[i]);
}
putchar(10);
return 0;
}

3978

被折叠的 条评论
为什么被折叠?



