Complexidade espacial

Calcule Complexidade espacial online grátis com a fórmula exata e um exemplo resolvido. Sem cadastro.

Complexidade espacial

Número de elementos n
Bytes por elemento (int32 = 4, int64/double = 8)bytes
Memória, MiB
3,8147MiB
Sem contar o overhead do contêiner e o alinhamentoCalcule Complexidade espacial online grátis com a fórmula exata e um exemplo resolvido. Sem cadastro.
Bytes
4000000
Em KiB
3906.3KiB
Em GiB
0.004GiB

A notação Big-O mostra como a memória cresce; esta calculadora mostra quanto ela realmente ocupa — bytes, KB, MB e GB para n elementos de um tamanho dado.

Como funciona o cálculo

Complexidade espacial descreve como o uso de memória de um algoritmo aumenta com o tamanho da entrada. O(n) indica o ritmo de crescimento, não os megabytes. Aqui o volume útil é calculado diretamente: memória = n × b, em que n é o número de elementos e b o tamanho de cada um em bytes.

Valores comuns de b: 1 byte para char/uint8, 4 bytes para int32 e float, 8 bytes para int64, double e ponteiro em 64 bits. O resultado usa unidades binárias: 1 KB = 1024 bytes, 1 MB = 2²⁰ = 1.048.576 bytes e 1 GB = 2³⁰ bytes (a rigor, KiB, MiB e GiB pela IEC 80000-13).

Para outras estruturas, coloque em n a contagem real de elementos: n² para uma matriz n×n, vértices mais arestas para uma lista de adjacência. Overhead dos contêineres e preenchimento por alinhamento não entram no cálculo.

Exemplo resolvido

Um array de 1.000.000 de valores int32 (4 bytes): 1.000.000 × 4 = 4.000.000 bytes = 3.906,3 KB ≈ 3,81 MB ≈ 0,004 GB. Guardando os mesmos valores como int64 ou double (8 bytes), são 8.000.000 bytes ≈ 7,63 MB — exatamente o dobro.

Pontos de atenção

  • Valores encapsulados custam bem mais: no CPython cada posição de uma lista é um ponteiro de 8 bytes mais um objeto int separado (cerca de 28 bytes para números pequenos).
  • Arrays dinâmicos (std::vector, ArrayList, list) reservam capacidade extra e tabelas hash mantêm posições vazias de propósito — deixe folga.
  • Algoritmos recursivos também usam a pilha: profundidade da recursão × tamanho do quadro conta na complexidade espacial.
  • Diferencie espaço auxiliar (além da entrada) de espaço total: merge sort precisa de O(n) auxiliar; heapsort, de O(1).

Mais sobre: Complexidade espacial

O que calcula

A calculadora «Complexidade espacial» calcula Memória, MiB em MiB a partir de 2 parâmetros: número de elementos n, bytes por elemento (int32 = 4, int64/double = 8) (bytes).

Cálculos de TI padrão para desenvolvedores e administradores.

Exemplo de cálculo

Com os parâmetros Número de elementos n = 1.000.000, Bytes por elemento (int32 = 4, int64/double = 8) = 4 bytes o resultado é 3,81 MiB (Sem contar o overhead do contêiner e o alinhamento).

Como usar

  1. Digite número de elementos n e bytes por elemento (int32 = 4, int64/double = 8) — cada campo acima é ajustável com um controle deslizante.
  2. Memória, MiB (MiB) é calculado automaticamente conforme você digita.
  3. Confira o exemplo abaixo para ver a fórmula aplicada a números reais.
  4. Copie o resultado ou salve esta calculadora nos favoritos.

Calculadoras relacionadas

Perguntas frequentes

Por que 4.000.000 bytes dão 3,81 MB e não 4?
A calculadora divide por 1.048.576 (2²⁰), ou seja, usa megabytes binários. Em unidades decimais (1 MB = 10⁶ bytes) seriam 4 MB.
O que significa O(1) de memória?
Que a memória extra não depende do tamanho da entrada — alguns contadores, por exemplo. Aqui isso equivale a um n fixo.
Quanto ocupa uma matriz 10.000 × 10.000 de doubles?
Use n = 100.000.000 e b = 8: 800.000.000 bytes ≈ 762,9 MB ≈ 0,745 GB.

Mais calculadoras desta categoria

Explore outras ferramentas gratuitas

Clusters K-Means (k)Método do cotoveloÁrvores de Random ForestCamadas de rede neuralProgramação da taxa de aprendizadoEndereço MAC ↔ IPv6Busca de fabricante MACSombra de caixa CSSROT13AtbashTamanho de bloco AESHash MD5