toda combinação possível de n conjuntos
Eu tenho n conjuntos. cada conjunto tem um número diferente de elementos. Eu gostaria de escrever um algoritmo que me dê todas as combinações possíveis dos conjuntos. por exemplo: Digamos que temos:
S1={1,2}, S2={A,B,C}, S3={$,%,£,!}
uma combinação deve parecer
C1={1,A,$}
C2={1,A,%}
.... e assim por diante, o número de combinações possíveis será2*3*4 = 24
Por favor me ajude a escrever este algoritmo em Java.
Muito obrigado antecipadamente