Re: [問題] 巢狀loop減少已回收
※ 引述《hawhow (來自異鄉= =)》之銘言:
: 因為matlab只要跑超過2個loop就會變得很慢...
: for i=1:256
: for j=1:256
: for k=1:256
: if a(j,k)==b(i,1)
: b(i,2)=b(i,2)+1;
: end
: end
: end
: end
: a矩陣:256*256
: b矩陣:256*2
: 假設a矩陣的值等於b(,1)的值,那b(,2)則+1,有什麼方式可以縮減loop嗎?
: 不然單這一個loop執行就要花30s...感謝
整個運算改成
b(:,2)=sum((repmat(b(:,1)',65536,1)==repmat(a(:),1,256)),1);
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.224.52.21
→
11/12 02:50, , 1F
11/12 02:50, 1F
討論串 (同標題文章)
MATLAB 近期熱門文章
PTT數位生活區 即時熱門文章