On 2026-10-21, Greg Wooledge <[email protected]> wrote:
> On Wed, Oct 21, 2026 at 20:48:28 +0200, Nicolas George wrote:
>> By the way, it seems what you want is not just distinct elements but all
>> the elements too: a permutation. For that, there is a much more
>> efficient algorithm: swap the first element randomly with any of the
>> elements, then the second with any of the elements except the first,
>> etc.
>
> I didn't get that impression from his code, but if he really does want
> his playlist to be the same size, or nearly the same size, as his
> full library of selections, then shuffling the array is the way to go
> for sure.
>
> You don't want to be in a situation where you're generating random
> numbers waiting for that last song out of 10,000 songs to be chosen.
>

If I select random on a finite song playlist, I wouldn't want the same song
playing twice; this would require an algorithm that would deselect songs that
have already been chosen. Maybe your code accounted for that (or not).

Reply via email to