Re: [問題] for的速度問題已回收

看板MATLAB作者 (Up to date)時間17年前 (2009/01/12 08:50), 編輯推噓6(604)
留言10則, 9人參與, 最新討論串6/7 (看更多)
我跑了結果是差不多的ㄟ >>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 seconds. ※ 引述《ericabab (ㄍㄠˊ)》之銘言: : 今天跑程式發現一個搞不懂的問題 : 以下兩種情況 : (1) : for i=1:1000 : ; : end : (2) : k=1:1000; %這行並沒有算在時間裡 : for i=k : ; : end : 這兩種情況的for loop,(2)的速度會慢上好幾十倍 : 想不通為什麼,我會覺得完全是一樣的事情@@ : 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.132.86.133

01/12 09:36, , 1F
在command windows複製貼上跑計算時間會有點不太準
01/12 09:36, 1F

01/12 10:41, , 2F
1000 太小了. 你改成 10000000 就知道差別很大了
01/12 10:41, 2F
>> tic for i=1:100000000; end toc k=1:100000000; tic for i=k; end toc Elapsed time is 10.786771 seconds. Elapsed time is 10.071947 seconds. 好像還是差不多ㄟ ※ 編輯: Uptodate 來自: 220.132.86.133 (01/12 11:11)

01/12 11:28, , 3F
會不會是後來的版本 寫法有改善? 我的是 6.5 版的
01/12 11:28, 3F

01/12 11:28, , 4F
我的是2007b
01/12 11:28, 4F

01/12 12:36, , 5F
我也是2007b耶,我的是黑心貨嗎XD
01/12 12:36, 5F

01/12 12:40, , 6F
OS?y
01/12 12:40, 6F

01/12 12:44, , 7F
裡面加上簡單的assign應該就有差
01/12 12:44, 7F

01/12 17:32, , 8F
for i=1:length(k) ?
01/12 17:32, 8F

01/13 14:57, , 9F
2008b版 第一個0.348060sec 第二個13.977346
01/13 14:57, 9F

02/02 16:20, , 10F
2008a版 第一個0.377656sec 第二個18.706162
02/02 16:20, 10F
文章代碼(AID): #19QfFUKs (MATLAB)
討論串 (同標題文章)
文章代碼(AID): #19QfFUKs (MATLAB)