Gen
Gen
int p1,p2;
p1=*(int*)a;
p2=*(int*)b;
return p1-p2;}
}
typedef int (*TIP_PF)(const void*, const void*);
bool interschimb;
do{
interschimb=false;
}while (interschimb==true);
}
bool interschimb;
do{
interschimb=false;
for (int i=0;i<nrel-1;i++){
void* vi = (char*)baza + i*dimElement;
void* vip=(char*)baza+(i+1)*dimElement;
if (comparare(vi,vip)>0){
interschimbat(vi, vip);
interschimb=true;
}
if(interschimb) break;
for(int i=nrel-1 ; i>=0;i--){
void* vi = (char*)baza + i*dimElement;
void* vip=(char*)baza+(i-1)*dimElement;
if (comparare(vi,vip)>0){
interschimbat(vi, vip);
interschimb=true;
}
}
}
while (interschimb==true);
}
int main()
{srand(time(NULL));
int n;
cout<<"introduceti nr de elemente a vectorului de sortat:"<<endl;
cin>>n;
int v[n];
int aux[n];
for( int i= 0 ; i < n; ++i ) {
v[i]= rand()%n;
aux[i]=v[i];
cout<<v[i]<<",";
}
DirectSort(v, n, sizeof(int),comp_int,interschimb_int);
cout<<endl<<"vectorul sortat cu direct sort:"<<endl;
for( int i= 0 ; i < n; ++i ) {
cout<<v[i]<<",";
v[i]=aux[i];//v merge inapoi la forma initiala
}
BubbleSort(v, n, sizeof(int),comp_int,interschimb_int);
cout<<endl<<"vectorul sortat cu bubble sort:"<<endl;
for( int i= 0 ; i < n; ++i ) {
cout<<v[i]<<",";
v[i]=aux[i];//v merge inapoi la forma initiala
}
CocktailSort(v, n, sizeof(int),comp_int,interschimb_int);
cout<<endl<<"vectorul sortat cu insert sort:"<<endl;
for( int i= 0 ; i < n; ++i ) {
cout<<v[i]<<",";
v[i]=aux[i];//v merge inapoi la forma initiala
}
return 0;
}