quello che mi serve, è un algoritmo per la creazione di un calendario di partite tra squadre.
ES. Ho 4 squadre: A B C D. Per fare un calendario con queste quattro esce quasi spontaneo.
1^ giornata
A-B
C-D
2^ giornata
A-C
B-D
3^ giornata
A-D
B-C

Per ottenere questo calendario, non ho usato (almeno volontariamente) nessun algoritmo particolare, l'ho fatto ad occhio.
Quando le squadre aumentano, diventa più difficile. Soprattutto non si può fare sempre tutto "ad occhio". A me servirebbe appunto un algoritmo che date un "x" numero di squadre, mi crei un calendario AD HOC.

Avevo pensato alla creazione di una matrice che contenesse tutte le partite. Quindi nel caso di quattro squadre
codice:
    A   B    C    D
A  -   AB  AC  AD
B        -   BC  BD
C              -  CD
D                   -
Dove nella diagonale superiore ottengo tutte le partite del calendario che poi bisogna organizzare nelle varie giornate. Ma come? Mi serve appunto una regola matematica che mi riorganizzi queste partite.

L'unico vincolo è che la stessa squadra non può giocare più di una partita per giornata (e mi sembra ovvio) e che ogni giornata deve avere un numero fisso di partite che equinvale al numero totale di squadre diviso due.
Quindi per 4 squadre, ogni giornata avrà 2 partite, per 6 squadre, 3 partite e così via...

Ovviamente il calendario è realizzabile solo con un numero pari di squadre e maggiori di quattro.

Scusate se prima non sono stato chiaro, spero che ora possiate aiutarmi meglio