30/09/2018, 22:12

Thuật toán play file ngẫu nghiên

(không biết gọi thế nào nên gọi đại như trên) trong player có chế độ ngẫu nhiên chọn một bài bất kỳ và phát nó, thuật toán như thế nào ạ ? cho em code c# luôn nhé

hacked viết 00:21 ngày 01/10/2018

Đại ý là thế này:
1 bài người ta đánh một số thứ tự (lưu địa chỉ bài hát vào mảng)
2 tạo một số ngẫu nhiên từ 0 đến (số lượng bài hát)-1
3 phát bài có số thứ tự ngẫu nhiên vừa tạo.

Tao Không Ngu. viết 00:13 ngày 01/10/2018

This post was flagged by the community and is temporarily hidden.

Quốc Hùng viết 00:15 ngày 01/10/2018

@sample Thay vì dùng mảng thì mình nghĩ nên dùng list tốt hơn vì không cần init trước khi dùng vs lại cho size hả hê.

bài hát -> file.location
                  |
                  V
List [ number |  data         ]

Cũng như bạn sample nói thì cũng khởi tạo số ngẫu nhiên…

List ...][][][][][][location == RandomNum][][][][... (list.get(RandomNum))
RandomNum : ___________/

Và khi trả về được rồi thì exec trực tiếp thông qua file luôn, nhưng nhớ check kiểu luôn

String  filetoPlay = list.get(RandomNum));
                 \\
File [ new File ( dir) ] -> filePlay
                             /
         playFileMP3 ( File f ) {
      //this function will play the file
}

Code ví dụ:

//mơ à? tự code ms mau master chứ ;)
hacked viết 00:24 ngày 01/10/2018

Số ngẫu nhiên có hàm do người ta viết sẵn rồi.

Nguyễn Hoàng Trung viết 00:13 ngày 01/10/2018

mảng động hình như ảnh hưởng tới performance thì phải

Quốc Hùng viết 00:24 ngày 01/10/2018

nhưng mảng động sẽ hữu ích hơn mảng tĩnh đối với số lượng đầu vào unknown mà

Nguyễn Hoàng Trung viết 00:24 ngày 01/10/2018

Tất nhiên :v nhưng phải xem trường hợp của thớt như thế nào :)) tùy trường hợp thì mình áp mảng động vs mảng tĩnh chứ

Bài liên quan
0