Re: [問題] 練習題

看板C_Sharp (C#)作者 (躂躂..)時間18年前 (2007/05/03 17:20), 編輯推噓3(301)
留言4則, 4人參與, 最新討論串5/8 (看更多)
※ 引述《GreatShot (我要拿Ph.D.!!!)》之銘言: : : 另外,如果要算的次方數很大的話 : : (應該到五次或是六次就應該呼叫了..) : : 建議呼叫 Math.Pow 會快上很多.... : : 裡面用的算法比你自己寫的連乘法好很多.. : ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ : 這點跟我認知很不一樣 : 我沒看過Math.Pow()的source所以不敢說它演算法好不好 : 我只能作實驗來觀察 : source如下 我利用了你的程式~ "單" 測連乘和Math.Pow()在1~1000次方時連做100次運算.. 我把結果繪成圖表 http://moon.cse.yzu.edu.tw/~s922254/lala/fig.png
http://moon.cse.yzu.edu.tw/~s922254/lala/app.rar (程式) x軸是次方, y軸是時間(us) 紅色是用 Math.Pow計算 藍色是 int 的連乘 (a*a*a*a....) 綠色是 double 的連乘 結果是 Math.Pow所需的時間一直都蠻固定的.. 我想 Math.Pow 應該有做到一定程度的最佳, 而且甚至可能是native code, 所以呼叫的overhead較大.. (其實我只是看圖說故事orz) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.139.145.125

05/03 19:28, , 1F
"XD
05/03 19:28, 1F

05/03 21:13, , 2F
請問你指的overhead是說重覆做同樣動作的次數嗎??
05/03 21:13, 2F

05/03 21:33, , 3F
overhead你可以當作是一種..額外的負擔
05/03 21:33, 3F

05/05 18:16, , 4F
overhead就是成本的意思 另推測試圖 清楚明白
05/05 18:16, 4F
文章代碼(AID): #16EQbto9 (C_Sharp)
討論串 (同標題文章)
本文引述了以下文章的的內容:
9
17
以下文章回應了本文 (最舊先):
完整討論串 (本文為第 5 之 8 篇):
3
4
3
4
9
17
文章代碼(AID): #16EQbto9 (C_Sharp)