quicksort.cpp

来自「数据结构中快速排序算法的实现,可以对整数以及其他数据进行排序」· C++ 代码 · 共 35 行

CPP
35
字号
#include "stdio.h"
#define N 8
void swap(int *a,int *b)
{
	int t;
	t=*a;
	*a=*b;
	*b=t;
}
void quicksort(int a[],int q,int r)
{//快速排序
	int x,s,i;
	if(q<r)
	{
		x=a[q];
		s=q;
		for(i=q+1;i<=r;i++)
			if(a[i]<=x)
			{
				s++;
				swap(&a[s],&a[i]);//swap a[s],a[i]
			}
		swap(&a[q],&a[s]);//swap a[q],a[s]
		quicksort(a,q,s);//sort a:q...s
		quicksort(a,s+1,r);//sort a:s+1...r
	}
}
void main()
{
	int i,a[N]={8,7,6,5,4,3,2,1};
	quicksort(a,0,N-1);
	for(i=0;i<N;i++)
		printf("%d ",a[i]);
	return;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?