Complexité spatiale
Calculez Complexité spatiale en ligne gratuitement avec la formule exacte et un exemple résolu. Sans inscription.
Complexité spatiale
La notation grand O dit comment la mémoire croît ; ce calculateur dit combien elle pèse vraiment : octets, Ko, Mo et Go pour n éléments d’une taille donnée.
Comment fonctionne le calcul
La complexité spatiale décrit l’évolution de la mémoire utilisée par un algorithme quand l’entrée grandit. O(n) donne l’allure de la croissance, pas les mégaoctets. Ici, le volume utile est calculé directement : mémoire = n × b, où n est le nombre d’éléments et b la taille d’un élément en octets.
Valeurs courantes de b : 1 octet pour char/uint8, 4 octets pour int32 et float, 8 octets pour int64, double et un pointeur en 64 bits. Le résultat est exprimé en unités binaires : 1 Ko = 1024 octets, 1 Mo = 2²⁰ = 1 048 576 octets, 1 Go = 2³⁰ octets (au sens strict Kio, Mio et Gio selon la CEI 80000-13).
Pour d’autres structures, mettez dans n le nombre réel d’éléments : n² pour une matrice n×n, sommets plus arêtes pour une liste d’adjacence. Le surcoût des conteneurs et le bourrage d’alignement ne sont pas comptés.
Exemple détaillé
Un tableau de 1 000 000 de valeurs int32 (4 octets) : 1 000 000 × 4 = 4 000 000 octets = 3 906,3 Ko ≈ 3,81 Mo ≈ 0,004 Go. Les mêmes valeurs en int64 ou double (8 octets) donnent 8 000 000 octets ≈ 7,63 Mo, soit exactement le double.
Points d'attention
- Les valeurs encapsulées coûtent bien plus : en CPython, chaque case d’une liste est un pointeur de 8 octets plus un objet int séparé (environ 28 octets pour un petit nombre).
- Les tableaux dynamiques (std::vector, ArrayList, list) réservent de la capacité et les tables de hachage gardent volontairement des cases vides : prévoyez une marge.
- Les algorithmes récursifs consomment aussi la pile : profondeur de récursion × taille du cadre fait partie de la complexité spatiale.
- Distinguez espace auxiliaire (en plus de l’entrée) et espace total : le tri fusion demande O(n) auxiliaire, le tri par tas O(1).
En savoir plus : Complexité spatiale
Ce qu'elle calcule
La calculatrice « Complexité spatiale » calcule Mémoire, Mio en Mio à partir de 2 paramètres : nombre d'éléments n, octets par élément (int32 = 4, int64/double = 8) (octets).
Calculs informatiques standard pour développeurs et administrateurs.
Exemple de calcul
Avec les paramètres Nombre d'éléments n = 1 000 000, Octets par élément (int32 = 4, int64/double = 8) = 4 octets le résultat est 3,81 Mio (Hors surcoût du conteneur et alignement).
Comment l'utiliser
- Saisissez nombre d'éléments n et octets par élément (int32 = 4, int64/double = 8) — chaque champ ci-dessus se règle avec un curseur.
- Mémoire, Mio (Mio) est calculé automatiquement à mesure que vous saisissez.
- Consultez l'exemple ci-dessous pour voir la formule appliquée à de vrais nombres.
- Copiez le résultat ou ajoutez cette calculatrice aux favoris.
Calculatrices associées
Questions fréquentes
Pourquoi 4 000 000 octets font 3,81 Mo et pas 4 ?
Que signifie O(1) en mémoire ?
Combien pèse une matrice 10 000 × 10 000 de doubles ?
Plus de calculatrices dans cette catégorie
Découvrez d'autres outils gratuits