Ciao a tutti,
vorrei pareri/consigli su un problema. Non è importante il linguaggio.
E' data una sequenza di caratteri. Ciascun carattere appartiene ad uno ed un solo gruppo (non necessariamente i gruppi hanno lo stesso nr di elementi).
La sequenza viene parsata e di essa vengon generate tutte le possibili permutazioni tali che ogni suo elemento sia sostituito da tutti gli altri del suo stesso gruppo.
Ad es. dati i gruppi [R, H, K] ed [E, D] e la sequenza HDKE si hanno 36 (3 * 2 * 3 * 2) possibili permutazioni.
L'algoritmo che ho scritto funziona correttamente. Il problema è che queste sequenze sono lunghe centinaia di elementi e generano miliardi di possibili permutazioni mandando la macchina in crash per problemi di memoria.
Vorrei aver consigli su:
Come eventualmente risolvere il problema in tempo nn esponenziale (sempre ammesso che sia possibile...).
Come poter aggirare il problema memoria. In tal senso ho pensato di lavorare direttamente su file, accedendo di volta in volta alle specifiche righe ed aggiornandole (ma sarebbe particolarmente lento).
thx![]()