Discussione: Permutazioni Casuali
View Single Post
Old 23-12-2004, 17:23   #7
supertonno
Senior Member
 
L'Avatar di supertonno
 
Iscritto dal: Aug 2003
Cittā: Rimini
Messaggi: 422
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
supertonno č offline   Rispondi citando il messaggio o parte di esso