Vectorize two for loops
Mostrar comentarios más antiguos
How to vectorize this function:
for i=1:100
for j=1:200
TheOne(i,j) = i+j;
end
end
Respuestas (2)
David Hill
el 19 de Nov. de 2020
Editada: David Hill
el 19 de Nov. de 2020
[i,j]=meshgrid(1:100,1:200);
TheOne=reshape(sum((Png1(:,i)-Png2(:,j)).^2),100,[]);
4 comentarios
Master Blabla
el 19 de Nov. de 2020
David Hill
el 19 de Nov. de 2020
Does not get any simpler.
Master Blabla
el 19 de Nov. de 2020
David Hill
el 19 de Nov. de 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
el 24 de Nov. de 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;
Categorías
Más información sobre Programming en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!