RE:PERDON SE ENVIO ANTES DE TERMINAR
Hola, espero poder darte un idea, es con lo que alcanzo a entender de tu explicacion:
Podrias basarte de un vector mismo del numero de equipos, por ejemplo 8,
Cuando empiece la asignacion harias lo siguiente:
Limpias el vector, asignas 0 a todas las posiciones o valor null.
Tomas el indice 1, que es el quipo 1, generas un numero aleatorio del 1 al 8 y que sea diferente al indice seleccionado. Una vez que lo genera por ejemplo el 2, revisa en las 8 posiciones que no este asignado a nadie, de ser asi, lo asignas al indice1 y ya definiste que el equipo 1 jugara con el equipo 2. si lo encuentras pues es ovbio que ya definiste a ese equipo para jugar con alguien, entonces vuelves a generar un nuevo numero. y a comparar nuevamente.
Para la siguiente ronda no borres el vector.
y cuando hagas la busqueda del valor generado en el vector, si marca que lo encontro, entonces asegurate que la posicion donde lo encontro no sea la que seleccionaste. Como en el caso anterior, empezamos en el 0, y le asignaste el 2. Ahora con la nueva asignacion resulta que como primer valor aletaorio recibiste el 2, lo buscas en el vector, y si lo encuentra, pregunta por la posicion, si es la misma a 0 no la asignes, si es diferente la asignas a 0, y como fue diferente borrale el valor a la posicion donde se encontro el 2.
Espero poder darme a entender yo tambien.