Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it L'avatar di infinitejustice
    Registrato dal
    Nov 2001
    residenza
    Barcelona
    Messaggi
    772

    algoritmo permutazioni

    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
    Live fast. Troll hard.
    Pythonist | Djangonaut | Puppeteer | DevOps | OpenStacker | Lost in malloc
    Team Lead @Gameloft Barcelona

  2. #2
    Utente di HTML.it L'avatar di infinitejustice
    Registrato dal
    Nov 2001
    residenza
    Barcelona
    Messaggi
    772
    Problema risolto... semplicemente prendendo n permutazioni a caso tra le possibili come rappresentative sel set.

    Live fast. Troll hard.
    Pythonist | Djangonaut | Puppeteer | DevOps | OpenStacker | Lost in malloc
    Team Lead @Gameloft Barcelona

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.