Válí se ti projekty v šuplíku? Dostaň je mezi lidi a získej cool tričko a body na profi IT kurzy v soutěži ITnetwork summer 2017!
Přidej si svou IT školu do profilu a najdi spolužáky zde na síti :)

Diskuze: Všechny kombinace jak proházet pole

Java Java Všechny kombinace jak proházet pole

Aktivity (1)
Avatar
Honza
Neregistrovaný
Avatar
Honza:8.12.2013 14:11

Dobrý den,

chtěl bych se zeptat jestli neexistuje nějáký algoritmus jak proházet prvky pole na všechny možné způsoby.

například mám pole:

String[] pole = new String[] {"A", "B", "C", "D"};

a potřebuji algoritmus co mi vypíše všechny možnosti jak je prohodit.
Takže něco jako tohle:
ABCD
ABDC
ACDB
ACBD
ADBC
ADCB
...
a tak dál.

 
Odpovědět 8.12.2013 14:11
Avatar
Hartrik
Redaktor
Avatar
Odpovídá na Honza
Hartrik:8.12.2013 14:59

To co hledáš jsou permutace, neměl by být problém vygůglit si algoritmus.

 
Nahoru Odpovědět  +2 8.12.2013 14:59
Avatar
neutr
Člen
Avatar
neutr:27.12.2016 17:55

Permutace je celkem vágní pojem ačkoliv je správný. Tento případ je Faktoriál. Je tady více návodů i nějaký kód.

PS : Dnes je permutacemi vše co nejsou kombinace. Když bys Honzo potřeboval například jen čtyřmístné "kombinace" z celku > 4 jednalo by se o "variace bez opakování". Například V(6,4) - variace bez opakování 4. třídy celku 6.

Opačně variace bez opakování kde k=n V(n,n) = také n! = také permutace (tak jak byly definovány původně P(n)= n!).

Editováno 27.12.2016 17:57
 
Nahoru Odpovědět 27.12.2016 17:55
Avatar
Štefan Melich:27.12.2016 18:36

majú byť tie kombinácie prvkov poľa o dĺžke pola (v tomto prípade 4 prvkové), alebo aj všetky 3, prvkové 2, 1...?

Editováno 27.12.2016 18:37
 
Nahoru Odpovědět 27.12.2016 18:36
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 4 zpráv z 4.