QQ音乐安卓版的随机播放为什么播放顺序是一定的?

发布网友 发布时间:2022-04-21 18:11

我来回答

1个回答

热心网友 时间:2023-06-24 17:52

因为音乐程序不是真正的乱序的,随机播放有一个固定的算法。

因为程序的行为是可预测的,所以软件实现的“随机”都是“伪随机”,也就是根据某个函数(一般是多项式函数)产生一个连续的整数序列,如果这些整数可以基本覆盖整个值域而且出现的次序没有明显的规律,就算是实现了一个伪随机数算法。

虽然得到的数字表面上看互不相关,可以称作“随机”,但如果用户也知道这个函数,那么用户就可以预测下一个数字,那就不是“随机”了。

为了避免每次调用函数都产生同样的序列,就需要每次调用时(根据当前的时间)设置一个“种子”,也就是初值,在不同的时间调用随机函数获得的序列也就不同了。

shuffle需要一个均匀性非常好的随机函数,如果会编程的话,可以试一下:

n(i+1)=(n(i)*101+81)%100可以产生一个非常均匀的[0,99]的随机序列。

如果想得到“真正的随机”,只能依靠硬件实现,一般是用噪声发生器。



声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com