Ver Mensaje Individual
  #1 (permalink)  
Antiguo 09/03/2013, 21:59
Avatar de SantyXDz
SantyXDz
 
Fecha de Ingreso: noviembre-2011
Ubicación: Colombia
Mensajes: 3
Antigüedad: 12 años, 5 meses
Puntos: 0
Pregunta Permutacion - Combinacion - No importa el Orden

Hola, estoy iniciando con Java y necesito hacer un algoritmo donde ingrese un arreglo por ejemplo {a,b,c} y el debe darme las combinaciones posibles sin que se repitan y sin que se sean iguales en posiciones diferentes ("ab" seria lo mismo que "ba"), esto lo debe usar por ejemplo para encontrar las posiciones en que una serie de equipos pueden jugar en un campeonato (sin que juegen contra si mismos, ni que jueguen el mismo partido).
en el caso de que ingrese {a,b,c} debe resultar ab, ac, bc.
en el caso de que ingresara {a,b,c,d} debe resultar ab, ac ad, bc, bd, cd
se que la formula matemática es esta para las combinaciones sin repetición [URL="http://oi48.tinypic.com/2i75q55.jpg"]formula[/URL] : n!/(r!(n-r)!)

hasta ahora eh logrado que no se repita consigo misma (que no haya "aa","bb","cc" etc...) me falta hacer que si coloca "ab", no coloque después "ba".

esto es lo que llevo:
Código:
	void campeonato(int arreglo[]){
		int i;
		int j;
		for (i=0;i<arreglo.length;i++) {
			for (j=0;j<arreglo.length;j++) {
				if (arreglo[i]!=arreglo[j]) {
				System.out.println(arreglo[i]+" vs "+arreglo[j]);	
				}
			}
		}
	}
Gracias.

Última edición por SantyXDz; 09/03/2013 a las 22:22