30/09/2018, 19:46

Làm thế nào để in ra các giá trị trong mảng một cách ngẫu nhiên?

ai có cách j hay chỉ mình với

Chung viết 21:50 ngày 30/09/2018

Dùng hàm rand() xem sao

Nguyen Van Huyen viết 21:48 ngày 30/09/2018

Vẫn chưa hiểu ý bạn là như thế nào ?

  1. Tạo các giá trị ngẫu nhiên cho mảng ?
  2. In ra các giá trị ngẫu nhiên trong một mảng cho trước ?

Nếu là ý số 1) thì bạn dùng hàm random trong ngôn ngữ mà bạn đang dùng để gán các arr[i] bằng các giá trị random đó.

Còn ý thứ 2) ví như cho một arr = {1, 0, -5, 11, 0, 7, 100, 55} và yêu cầu in ra ngẫu nhiên các giá trị của arr. Ý tưởng cũng dùng hàm radom nhưng sẽ radom các index của arr, ví dụ arr hiện đang có 8 phần tử và index của nó là từ 0 đến 7 mình sẽ random ra một số nguyên indexR bất kỳ từ 0 đến 7 rồi xuất cái arr[indexR] ra.

Minh Hoàng viết 22:03 ngày 30/09/2018

Câu hỏi 1: Ngôn ngữ gì?

while (!(sucesecd = try())) viết 21:57 ngày 30/09/2018

bạn có thể tham khảo thuật toán Fisher–Yates shuffle, ý tưởng rất đơn giản thôi duyện mảng từ cuối lại, tại mỗi phần tử random ra một số j trong khoảng [0, i], đổi chỗ a[i] và a[j].

Fisher–Yates shuffle

demo: https://bost.ocks.org/mike/shuffle/

hinhf nghĩ bạn hoàn toàn có thể dựa trên ý tưởng này để giả quết vấn đề

Bài liên quan
0