che è computazionalmente poco efficiente o(n^2, anzi peggio con il generatore "normale" random), oltre che di dubbia funzionalità (se vuoi ci guardo, ma ti suggerisco il punto successivo...)

...si utilizza in questi casi il metodo dello "scambio": parti da un array ordinato, generi una serie di indici tra 1 e max, scambi i valori ("mischi"), ottenendo una complessità lineare