Jeg vil nu ikke kalde det for en sortering, men mere find en tilfældig partition. Nøgleordet her er det er tilfældig. Så for at nedbryde problemet:
Hvornår er et spillekort blandet tilfældigt?
- Det kan man vel sige det er hvis alle kortenes placering er tilfældig.
Hvornår er et kort så placeret tilfældig i en blanding?
- Hvis det placering er valgt uden bias. Det vil sige alle kort havde samme sandsynlighed for at ende på første position, anden position, og så videre, til sidste position.
Det giver en ide til en mulig løsning:
1. Vælg tilfældigt et kort som skal være det "øverste".
2. Resten er nu et kort mindre. Vælg et kort blandt resten der skal være det næstøverste.
3. Når der kun er et kort tilbage er man færdig.
Her er et billede der viser det bedre:
https://s30.postimg.org/968ouefgx/cards_shuffle.png . En ting du skal bruge er en måde at vælge en tilfældig index mellem i og j på. F.eks. i Java kunne
https://docs.oracle.com/javase/7/docs/api/java/util/Random.html måske være hjælpsom.