看板 [ MATLAB ]
討論串[問題] for的速度問題
共 7 篇文章
首頁
上一頁
1
2
下一頁
尾頁

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者m24 (m24)時間13年前 (2012/02/17 21:36), 編輯資訊
0
0
0
內容預覽:
你的好像都是第二個比較小. for m=1:100:inf. t1=tic;. for i=1:m;. end. t1=toc(t1);. k=1:m;. t2=tic;. for i=k;. end. t2=toc(t2);. t1>t2. end. 看最後會不會變成0 ?. --. 發信站:

推噓6(6推 0噓 4→)留言10則,0人參與, 最新作者Uptodate (Up to date)時間17年前 (2009/01/12 08:50), 編輯資訊
0
0
0
內容預覽:
我跑了結果是差不多的ㄟ. >>tic. for i=1:1000;. end. toc. Elapsed time is 0.001047 seconds.. >> k=1:1000;. tic. for i=k;. end. toc. Elapsed time is 0.000915 second
(還有125個字)

推噓1(1推 0噓 0→)留言1則,0人參與, 最新作者chiong (chiong)時間17年前 (2009/01/11 13:36), 編輯資訊
0
0
0
內容預覽:
可能是向量化計算的原因。. (1) i 是純量,Matlab真的是跑了一千次loop。. (2) 因為已定義好 k 是向量,所以Matlab會認為 i=k 是向量,. 如果for loop內的程式碼可以向量化的話,Matlab就先把它向量化,. 跑一個loop就好了。. 所以 (2) 會快很多。.

推噓1(1推 0噓 2→)留言3則,0人參與, 最新作者mantour (朱子)時間17年前 (2009/01/11 10:42), 編輯資訊
0
0
0
內容預覽:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%. r=0;. k1=1000000;. tic. for i=1:k1. r=r+i^2;. end. toc. s=0;. k2=1:1000000;. tic. for i=k2. s=s+i^2;. end. toc. t=0;. k
(還有108個字)

推噓4(4推 0噓 5→)留言9則,0人參與, 最新作者ericabab (ㄍㄠˊ)時間17年前 (2009/01/10 12:46), 編輯資訊
0
0
0
內容預覽:
你好,我的問題應該不只是因為k在外面要判斷的問題. 如下code. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%. k1=1000;. tic. for i=1:k1. ;. end. toc. k2=1:1000;. tic. for i=k2. ;. end. to
(還有147個字)
首頁
上一頁
1
2
下一頁
尾頁