Je développe actuellement un langage de programmation en C, et je veux permettre aux utilisateurs de créer des tableaux apparemment "illimités" avec des indices numériques sans sacrifier les performances dans le processus. Par exemple, table [1000000000]
serait idéalement créable et accessible en un instant sans la surcharge de mémoire d'une table de 1.000.000.000 d'articles, dont 999.999.999 étaient inutilisés; mais le tableau fonctionnerait également bien lorsque table [n]
a été défini pour, disons, 1 ≤ n ≤ 1000000.Utiliser une table de hachage pour créer un tableau illimité
Avez-vous des suggestions pour la mise en œuvre d'un tel système de gestion de réseau?
Les tableaux fragmentés peuvent être plus inefficaces, avec une complexité 'get/set' du nombre' O (N) '- 'N' d'éléments réels (http: //www.itl.nist.gov/div897/sqg/dads/HTML/hugeSparseArray.html) –
Pourquoi le downvote? dans la mesure où je peux dire que ce _is_ est un tableau épars, et je ne suggérais pas l'implémentation liée à @the_void, plutôt comme une liste chaînée de tableaux qui peuvent être unifiés au fil du temps – Hasturkun