J'essaie de créer un grand tableau booléen (pour un crible de nombres premiers). J'ai d'abord utilisé des listes Python, mais à limit = 10^9
cela a créé un MemoryError
.
boolarray = [True] * limit
Puis j'ai appris l'existence de Numpy et j'ai lu qu'il était meilleur avec l'organisation de l'espace, donc j'ai essayé
boolarray = np.full(limit, True, dtype = bool)
La limite n'a été augmentée que de façon marginale pour atteindre 10^10
ce qui n'est pas suffisant, puisque j'ai besoin 10^12
. Je trouve cela surprenant, vous avez juste besoin d'un bit pour les booléens, n'est-ce pas ? Une idée, comment surmonter ce problème ? Merci d'avance.