View Single Post
Old 23-01-2007, 15:36   #10
repne scasb
Bannato
 
Iscritto dal: Feb 2003
Messaggi: 947
Metodo classico (di gran lunga piu' veloce dei modelli proposti da Ziosilvio e da yorkeiser):

Codice:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

#define TABLE_LEN 80

void main(void)

{
    int i,j,k,l,tmp_val,table_n[TABLE_LEN];
    time_t t;

    srand((unsigned)time(&t));

    for(i=0;i<TABLE_LEN;i++)
	table_n[i]=i+1;

    for(i=0;i<TABLE_LEN;i++)
    {
	j=(double)rand()*TABLE_LEN/(RAND_MAX+1);
	k=(double)rand()*TABLE_LEN/(RAND_MAX+1);	
	tmp_val=table_n[j];
	table_n[j]=table_n[k];
	table_n[k]=tmp_val; 	
    }

    for(i=0;i<TABLE_LEN;i++)
	printf("%d\n",table_n[i]);
}
E' anche possibile pensare qualcosa di molto piu' veloce.
repne scasb è offline   Rispondi citando il messaggio o parte di esso