Algoritam za permutacije i kombinacije

Pozdrav. Ako naprimjer imam 7 brojeva, 0-1-2-3-4-5-6, kako da napravim sve moguce kombinacije koje imaju 7 znaka.

Znaci:

0123456
1023456
2013456
3012456
4012564

etc etc, neznam kakav kod da uopće pišem za to…

Prvo, što točno želiš?

Ako želiš da su sve znamenke različite, takvih kombinacija ima 7! (čita se sedam faktorijela) što je 7654321 = 5040.

Ako želiš da se znamenke mogu ponavljati (recimo 5555555) tada imaš 7^7 kombinacija, ili 823 543 kombinacija.

Želiš ih ispisati ili te samo zanima koliko ih ima?

ne znam…mozda postoji laksi nacin…vjerovatno da da…ali meni trenutno pada na pamet 7 ugnjezdenih petlji, svaka petlja za 1 broj

Ovakav nacin je vjerovatno prespor…mozda rekurzijom se lakse rjesava ovo.

To se zovu permutacije. Mogu se izguglati dobre funkcije, a jedna odlična se nalazi na

Ako samo želiš izračunati koliko ima mogućih kombinacija onda tome služi faktorijela. Zgodna mala funkcija nalazi se na

Sada možeš dobiti što ti treba:

Inaće kad naletiš na neki problem u PHP a rješenje ne postoji na webu možeš se poslužiti i drugim C-like jezicima.
Tako sam ja imao problem u PHP i našao rješenje u Javascriptu.
A nedavno potrebno rješenje pronašao u C#.


Copyright © 2020 WM Forum - AboutContact - Sponsored by: Mydataknox & Webmaster.Ninja