How can I efficiently vectorize a for-loop in MATLAB? Provide an example where vectorization significantly improves performance compared to a traditional loop.
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Tyo
le 31 Juil 2023
Modifié(e) : Walter Roberson
le 22 Août 2023
How can I efficiently vectorize a for-loop in MATLAB? Provide an example where vectorization significantly improves performance compared to a traditional loop.
Réponse acceptée
recent works
le 31 Juil 2023
Modifié(e) : Walter Roberson
le 22 Août 2023
Example to calculate the cumulative sum of an array using a for-loop and its vectorized version:
% Sample array
arr = 1:100000;
% Using for-loop
tic;
sum_loop = 0;
for i = 1:length(arr)
sum_loop = sum_loop + arr(i);
end
time_loop = toc;
% Using vectorization
tic;
sum_vectorized = sum(arr);
time_vectorized = toc;
disp("Using for-loop: Sum = " + sum_loop + ", Time taken = " + time_loop + " seconds.");
disp("Using vectorization: Sum = " + sum_vectorized + ", Time taken = " + time_vectorized + " seconds.");
1 commentaire
Les Beckham
le 31 Juil 2023
In case someone want to actually see the results:
% Sample array
arr = 1:100000;
% Using for-loop
tic;
sum_loop = 0;
for i = 1:length(arr)
sum_loop = sum_loop + arr(i);
end
time_loop = toc;
% Using vectorization
tic;
sum_vectorized = sum(arr);
time_vectorized = toc;
disp("Using for-loop: Sum = " + sum_loop + ", Time taken = " + time_loop + " seconds.");
disp("Using vectorization: Sum = " + sum_vectorized + ", Time taken = " + time_vectorized + " seconds.");
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!