ComeçarComece de graça

Tempos de execução - pré-alocação

No exercício anterior, crescer o vetor levou cerca de 2 segundos. Quanto tempo leva quando fazemos a pré-alocação do vetor? A função pre_allocate() está definida abaixo.

n <- 30000
# Fast code
pre_allocate <- function(n) {
    x <- numeric(n) # Pre-allocate
    for(i in 1:n) 
        x[i] <- rnorm(1)
    x
}

Este exercício faz parte do curso

Escrevendo código R eficiente

Ver curso

Instruções do exercício

A função pre_allocate() está disponível no seu workspace.

  • Usando system.time(), descubra quanto tempo leva para executar pre_allocate(n). Use o truque com <- para armazenar o resultado no objeto res_allocate.

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# Use <- with system.time() to store the result as res_allocate
n <- 30000
system.time(___ <- ___)
Editar e executar o código