我正在尝试创建一个函数来混合给定有序数组的值,比如从 0 到 n。所以这是我的尝试:
void JumbleUp(int *sorted,int n){
int jumble[n];
bool mark[n];
for(int i=0;i<n;i++)
mark[i]=false;
int aux=0;
srand(time(NULL));
for(int i=0;i<n;i++){
do {
aux=(rand()%n);
}while (mark[aux]);
jumble[i]=sorted[aux];
mark[aux]=true;
}
问题是这个函数不适用于大整数,因为它需要很多时间。那么我可以做些什么来改进我的功能,或者我可以使用哪些其他替代方法来混淆数组。