Attualmente sto affrontando il problema di dover eseguire i calcoli in base alla lunghezza di una determinata lista. Dovendo scorrere tutti gli elementi della lista per conoscerne le dimensioni è una grossa penalizzazione delle prestazioni dato che sto usando liste piuttosto grandi.Ottenere la lunghezza costante recuperare la costante di tempo con elenchi immutabili in un contesto di programmazione funzionale
Quali sono gli approcci suggeriti al problema?
Immagino che potrei sempre portare un valore di dimensione insieme alla lista in modo da conoscere in anticipo la sua dimensione senza doverlo calcolare sul sito di chiamata ma sembra un approccio fragile. Potrei anche definire un proprio tipo di lista in cui ogni nodo ha come proprietà la dimensione delle liste ma poi perderei la leva fornita dalle librerie del mio linguaggio di programmazione per gli elenchi standard.
Come gestite questo nella vostra routine quotidiana?
Attualmente sto usando F #. Sono consapevole di poter utilizzare le liste mutabili (array) di .NET, che potrebbero risolvere il problema. Sono molto più interessato, però, all'approccio funzionale puramente immutabile.
Hmmm ... Immagino che la lista non sia la struttura dati corretta per questo caso. Gli elenchi vanno bene per alcuni set di valori limitati, ma se questi valori diventano grandi e grandi si avranno problemi di prestazioni. – Ankur