--- ls.c.bak 2004-06-13 14:55:21.000000000 +0300 +++ ls.c 2010-11-29 01:51:23.832979479 +0200 @@ -66,9 +66,9 @@ long int dlb_flag = TRUE; /* flag indicating whether don't look bits are used. I recommend to always use it if local search is applied */ -long int * generate_random_permutation( long int n ) +long int * generate_random_permutation( long int nn ) /* - FUNCTION: generate a random permutation of the integers 0 .. n-1 + FUNCTION: generate a random permutation of the integers 0 .. nn-1 INPUT: length of the array OUTPUT: pointer to the random permutation (SIDE)EFFECTS: the array holding the random permutation is allocated in this @@ -80,16 +80,16 @@ double rnd; long int *r; - r = malloc(n * sizeof(int)); + r = malloc(nn * sizeof(long int)); - for ( i = 0 ; i < n; i++) + for ( i = 0 ; i < nn; i++) r[i] = i; - for ( i = 0 ; i < n ; i++ ) { + for ( i = 0 ; i < nn ; i++ ) { /* find (randomly) an index for a free unit */ rnd = ran01 ( &seed ); - node = (long int) (rnd * (n - tot_assigned)); - assert( i + node < n ); + node = (long int) (rnd * (nn - tot_assigned)); + assert( i + node < nn ); help = r[i]; r[i] = r[i+node]; r[i+node] = help;