Hello
Mình đang cần tạo 1 mảng ngẫu nhiên a[] có n phần tử từ 1 mảng b[] m phần tử có sẵn ( m>n và a[i] # a[j])
Ví dụ cần random 3 phần tử từ mảng [1,2,3,4,5,6,7,8,9]
a[1] # a[2] # a[3]
Và nếu như mình random 1 mảng x[] m phần tử từ 1 dãy số nằm trong khoảng [a,b] như thế này thì liệu các x[i] có bị lặp không.
srand(time(NULL));
for (unsigned int i = 0; i < m; i++) {
testSample[i] = a + rand()%(b-a+1);
}
Và số phần tử mình cần random có thể lên đến vài nghìn thì có nên dùng không, cách này random dựa vào thời gian, mình không biết có nguy cơ trùng phần tử không và mỗi lần random chạy 1 lần a + rand()%(b-a+1). Cần random vài nghìn phần tử chắc chết
Thank you