Tag: 智能播放列表

随机播放列表算法

我需要以随机顺序从一个范围(例如从x到y)创建一个数字列表,这样每个订单都有相同的机会。 对于我用C#编写的音乐播放器,我需要这个,以随机顺序创建播放列表。 有任何想法吗? 谢谢。 编辑:我对更改原始列表不感兴趣,只需从随机顺序中获取一个范围内的随机索引,以便每个订单都有相同的机会。 这是我到目前为止所写的内容: public static IEnumerable RandomIndexes(int count) { if (count > 0) { int[] indexes = new int[count]; int indexesCountMinus1 = count – 1; for (int i = 0; i 0) { int currIndex = random.Next(0, indexesCountMinus1 + 1); yield return indexes[currIndex]; indexes[currIndex] = indexes[indexesCountMinus1]; indexesCountMinus1–; } yield return indexes[0]; } […]