Combinazioni lista di tuple

j
jbox65 (530 points)
3 7 10
asked Jan 22, 2020 in Programmare in Python by jbox65 (530 points)
Ho una lista di tuple, dalla quale voglio formare tutte le possibili combinazioni di altre liste di tuple seguendo questi parametri:

-non devono avere primi elementi in comune

- non devono avere secondi elementi in comune

Quindi per esempio la lista [(1,2),(1,3),(3,5)] dovrà generarmi le liste [(1,2),(3,5)] e [(1,3),(3,5)]

soluzioni?
197 views

1 Answer

palombaro_rosa (1430 points)
1 2 7
answered Jan 22, 2020 by palombaro_rosa (1,430 points)
Allora, io me la gestirei salvando in una lista gli output di una funzione ricorsiva contenente due set (rispettivamente i primi numeri ed i secondi numeri giá usati), che vengono mantenuti per ogni ricorsione non conclusa (per confrontare le tuple non ancora inserite nel ciclo corrente con quelli compatibili) , svuotati quando hai confermato che quella determinata combinazione non puó essere piú lunga di quanto non lo sia in quello step della funzione ricorsiva e salvata nella lista nominata all'inizio solo se non giá presente in questa.

Per praticitá userei un 'contatore' per aggiungere le tuple alle possibili combinazioni in un certo ordine (i.e. trovare tutte le combinazioni che iniziano con (1,2), poi con (1,3) ed infine (3,5), scorrendo quindi i valori di input (anche nelle varie ricorsioni della variabile).