Hva er ineffektivt med funksjonen som står i filen under? Hvordan kan den forbedres?
Code Block |
---|
|
function retur = fib(n)
retur = [0, 1];
for i = 3:n
retur(i) = retur(i-1) + retur(i-2);
end
retur = retur(1:n);
end |
Videoforklaring (8:21)
Widget Connector |
---|
url | https://www.youtube.com/watch?v=QHtL02MEO-Q |
---|
|
Svar
Expand |
---|
title | Hvis du har prøvd selv, trykk her for å se svaret... |
---|
|
Listen retur vokser med ett element for hver iterasjon i løkken. Det fører til mye kopiering av data. Den forbedres hvis man før for-løkken binder retur til en vektor med plass til alle elementene som skal produseres. |