Ho un insieme di entità e ho bisogno di raggruppare queste entità in gruppi chiamati specie
. L'insieme di tutte le specie definite chiama lo Universe
e un'entità deve appartenere a una sola specie. Per questo ho una funzione booleana intransitiva chiamata f
che ritorna se due entità, passate da parametri, sono compatibili. Un specie
è definito da un gruppo di entità compatibili tra loro e un universe
è definito da un gruppo di specie che non sono completamente compatibili tra loro, assumendo che la compatibilità di due specie sia definita dalla compatibilità di tutte le sue entità.Algoritmo per trovare il gruppo ottimale di elementi compatibili
Come è possibile determinare l'universo che contiene il minor numero di specie possibile per un determinato insieme di entità?
Ho provato come segue e la mia funzione restituisce un universo valido ma non quello con il minor numero possibile di specie.
btw: Singolare delle specie è specie. Specie è una parola completamente diversa. – ciamej
Sfortunatamente, la tua soluzione è 'O (n^3)' e la mia è 'O (n^4)'. Se le prestazioni sono un problema per te, potrei pensare a un modo più veloce per calcolarlo. – ciamej
Puoi fornire l'input e l'output. E quale dovrebbe essere la complessità. – codebusta