Sto lavorando a un problema di ricerca per curiosità e non so come programmare la logica che ho in mente. Mi spiego a voi:Combinare efficacemente combinazioni di vettori
ho quattro vettori, diciamo per esempio,
v1 = 1 1 1 1
v2 = 2 2 2 2
v3 = 3 3 3 3
v4 = 4 4 4 4
Ora quello che voglio fare è quello di aggiungere loro combinazione-saggio, cioè,
v12 = v1+v2
v13 = v1+v3
v14 = v1+v4
v23 = v2+v3
v24 = v2+v4
v34 = v3+v4
Fino a questo punto va bene. Il problema ora è che voglio aggiungere ciascuno di questi vettori un vettore da v1, v2, v3, v4 che non ha aggiunto prima. Ad esempio:
v3 e v4 non è stato aggiunto a v12, quindi voglio creare v123 e v124. Allo stesso modo per tutti i vettori come,
v12 should become:
v123 = v12+v3
v124 = v12+v4
v13 should become:
v132 // This should not occur because I already have v123
v134
v14 should become:
v142 // Cannot occur because I've v124 already
v143 // Cannot occur
v23 should become:
v231 // Cannot occur
v234 ... and so on.
È importante che io non faccia tutto in un solo passaggio all'inizio. Ad esempio, posso fare (4 scegliere 3) 4C3 e terminarlo, ma voglio farlo passo dopo passo ad ogni iterazione.
Come si programma?
P.S .: Sto provando a lavorare su una versione modificata di un algoritmo apriori nel data mining.
Un titolo più specifico sarebbe davvero bello. –