schnorr / mlp

Disciplina de Modelos de Linguagens de Programação - INF/UFRGS
19 stars 11 forks source link

CATP 18 #34

Closed LucasAlegre closed 5 years ago

LucasAlegre commented 5 years ago

O tempo de 5 segundos para calcular o fatorial recursivo é muito alto. Como o fatorial é O(n), achar um x tal que fatorial(x) leve 5 segundos pra executar seria um x que causaria stack overflown na recursão em qualquer linguagem(desconsiderando tail call optimization). Não poderíamos assumir um tempo menor pro pior caso?

Abraços, Lucas

schnorr commented 5 years ago

Olá @LucasAlegre, obrigado por perceber isso. Entendo o problema. A ideia da exigência do tempo é fazer com que se tenha uma medida mais livra das flutuações naturais da plataforma computacional. Tais flutuações podem deixar se ser importantes a partir de medidas na ordem de milisegundos. Portanto, sim, flexibilizamos o tempo para o pior caso.

schnorr commented 5 years ago

Veja 2f741fc8a55e3f81925aa6c3508d8aa7a73f5c1b.