Quick sort

#include <iostream>
using namespace std;

int placer(int* T, int d, int f);
void triRapide(int* T, int d, int f);

int main()
{
	int T[14]={68,55,7,1,200,7,0,5,100,30,68,3,10,9};
	triRapide(T,0,13);
	for(int i=0;i<14;i++)
	{
		cout<<T[i]<<"\n";
	}
	return 0;
}

int placer(int* T, int d, int f)
{
	int pivot=T[d];
	int i=d;
	int j=f;
	int temp=0;
	
	if(i<j)
	{
		while(i<j)
		{
			while(T[j]>=pivot && j>d)
			{
				j--;
			}
			while(T[i]<=pivot && i<f)
			{
				i++;
			}
			if(i<j)
			{
				temp=T[i];
				T[i]=T[j];
				T[j]=temp;
				++i;
				++j;
			}
		}
		temp=T[d];
		T[d]=T[j];
		T[j]=temp;
	}
	return j;
}


void triRapide(int* T, int d, int f)
{
	int j1=0;

	if(d<f)
	{
		j1=placer(T,d,f);
  		triRapide(T,d,j1-1);
		triRapide(T,j1+1,f);
	}
}

 

你可能感兴趣的:(F#,J#)