Quote:
Originariamente inviato da anx721
Codice:
#include <stdlib.h>
void swap(int *a, int *b){
int temp = *a;
*a = *b;
*b = temp;
}
int * perm(unsigned int n){
int *vect = (int *)malloc(n * sizeof(int));
int i;
for(i = 0; i < n; i++)
vect[i] = i;
for (i = n-1;i >= 0;i--)
swap(&vect[i],&vect[(int) ((rand()/(1.0 + RAND_MAX)) * (i+1))]);
return vect;
}
|
Lo stavo proprio implementando cosi, con swap casuali...
Ora li provo tutte e due vedo quello che ha prestazioni migliori