The Code Runs Too Long, Should I Abort It?
1 次查看(过去 30 天)
显示 更早的评论
I run this code and I think it runs too long. Any solution?
c6 and c3 is matrix with 3300x2200 grids.
if true
e=0.06+c6;
f=c3;
[m,n]=size(f);
for i=1:m;
for j=1:n;
if f(i,j)>e;
t(i,j) = 1;
else
t(i,j) = 0;
end
end
end
end
0 个评论
采纳的回答
Adam
2016-12-14
编辑:Adam
2016-12-14
Can't you just replace the whole thing with:
t = c3 > e;
or
t = double( c3 > e );
if you want the 0s and 1s as doubles rather than logicals?
doc vectorization
gives an introduction to this very powerful alternative to nested for loops which is almost always noticeably faster too.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Entering Commands 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!