jak wylosować element dzielący?
Mam taki program:
#include <iostream>
#include <ctime>
#include <cstdlib>
using namespace std;
const int N=5;
void Losuj(int A[])
{
for (int i=0;i<N;i++)
A[i]=rand()%100;
}
void Wypisz(int A[])
{
for (int i=0;i<N;i++)
cout<<A[i]<<" ";
cout<<endl;
}
void QuickSort(int A[], int p, int k)
{
int i=p, j=k, m=A[(p+k)/2];
while (i<=j)
{
while (A[i]<m) i++;
while (A[j]>m) j--;
if (i<=j)
{
swap(A[i],A[j]);
i++; j--;
}
}
if (p<j) QuickSort(A,p,j);
if(i<k) QuickSort(A,i,k);
}
int main()
{
int A[N];
srand(time(NULL));
Losuj (A);
Wypisz (A);
QuickSort(A,0,N-1);
Wypisz(A);
return 0;
}