Weitere ähnliche Inhalte Ähnlich wie Backend performático além do "coloca mais máquina lá" - Diana Arnos (20) Backend performático além do "coloca mais máquina lá" - Diana Arnos12. - MUITOS JOINS?
- UM ÚNICO GRANDE INSERT UM VÁRIOS PEQUENOS
INSERTS?
- QUANTAS REQUISIÇÕES AO BANCO POR MINUTO?
23. O “O QUÊ” É TÃO IMPORTANTE QUANTO O
“COMO”
25. COMO VAI O SEU CÓDIGO?
SUA LÓGICA?
SEUS ALGORITMOS?
29. FIBONACCI
Quantas linhas de código vão rodar para dado input n?
T(n)?
T(0) = 2
T(1) = 2
T(2) = 3 + T(1) + T(0)
T(3) = 3 + T(2) + T(1)
T(4) = 3 + T(3) + T(2)
...
Observando a progressão, temos:
Dado n = 0 ou n =1, T(n) = 2
33. FIBONACCI
0, 1, 1, 2, 3, 5, 8, 13, 21...
0 + 1 = 1
0, 1, 1
1 + 1 = 2
0, 1, 1, 2
1 + 2 = 3
0, 1, 1, 2, 3
2 + 3 = 5
0, 1, 1, 2, 3, 5
3 + 5 = 8
0, 1, 1, 2, 3, 5, 8
...
34. FIBONACCI
public function getFibonacci (int $number): int
{
$fibonacci[0] = 0;
$fibonacci[1] = 1;
for ($i = 2; $i <= $number; $i++) {
$fibonacci[$i] = $fibonacci[$i-1] + $fibonacci[$i-2];
}
return $fibonacci[$number];
}
35. FIBONACCI
Calculando quantas linhas de código rodam para cada
iteração, considerando que as 3 primeiras linhas e a
última (return) vão rodar sempre:
T(2) = 4 + 2 = 6
T(3) = 4 + 2 + 2 = 8
T(4) = 4 + 2 + 2 + 2 = 10
...
T(n) = 2n + 2