Vectorize two for loops
Afficher commentaires plus anciens
How to vectorize this function:
for i=1:100
for j=1:200
TheOne(i,j) = i+j;
end
end
Réponses (2)
David Hill
le 19 Nov 2020
Modifié(e) : David Hill
le 19 Nov 2020
[i,j]=meshgrid(1:100,1:200);
TheOne=reshape(sum((Png1(:,i)-Png2(:,j)).^2),100,[]);
4 commentaires
Master Blabla
le 19 Nov 2020
David Hill
le 19 Nov 2020
Does not get any simpler.
Master Blabla
le 19 Nov 2020
David Hill
le 19 Nov 2020
Made a mistake. Try this.
[i,j]=meshgrid(1:100,1:200);
TheOne=reshape(sum((Png1(:,i)-Png2(:,j)).^2),200,[])';
CHENG QIAN LAI
le 24 Nov 2020
[i,j]=ndgrid(1:100,1:200);
% 1 2 3 . . . 200
%---------------------------
% i= 1 1 1 . . . 1 | 1
% 2 2 2 . . . 2 | 2
% 3 3 3 . . . 3 | 3
% . . . | .
% . . . | .
% . . . | .
% 100 100 100 . . . 100 | 100
%---------------------------
% j= 1 2 3 . . . 200 | 1
% 1 2 3 . . . 200 | 2
% 1 2 3 . . . 200 | 3
% . . . | .
% . . . | .
% . . . | .
% 1 2 3 . . . 200 | 100
TheOne = i+j;
Catégories
En savoir plus sur Programming dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!