Re: [問題] C語言題目請益

作者: cyBochu (Fathome)   2018-09-12 20:47:46
※ 引述《SocketAM2 (AM2)》之銘言:
: 1. leftBound只是常數,且每次回圈都用在判斷,這可以改善
: 2. inner loop中的image[yi+c][b_next]
: 2.1 b_next未宣告
: 2.2 c的值沒有保護跨界提取
: 3. score > 200的條件可以提到最前面檢查一次就好(甚至caller自己該處理),這個200和leftBound的2都可以#define constant
: 4. outer loop中第一個if成立的話,如果條件不符合可以直接break出去接return False,因為下一個b一定是break
: 以上能“優化”的效果很可能難易被人察覺或造成有意義的差別...
: 你要不要說下想做什麼
: 考慮到上面第二點,我猜實際的問題可能不是優化
: 程式的正確性也許需要先確認一下
: 例如byte * * image就不太像典型的存放影像pixel值的方式
: 另外,如果你要算的圖是拍來的要更小心...
: 小的是低手,請高手盡量鞭
作者: Schottky (順風相送)   2018-09-13 00:05:00
問題是你沒代沒事為何要優化有遇到記憶體不足或執行速度過慢的障礙嗎?
作者: cphe (魔鬼藏在垃圾筒裡)   2018-09-13 02:32:00
作業樓上不用太認真
作者: Schottky (順風相送)   2018-09-13 07:34:00
樓上,我倒覺得應該沒人會出這麼蠢的作業...我也覺得1.應該先探討正確性2.講解一下這段程式的目的再仔細看看,整個程式錯得很離譜,永遠不會return TRUE那我建議最快的方法是不要做任何運算直接return FALSE我真是太聰明了
作者: cphe (魔鬼藏在垃圾筒裡)   2018-09-13 08:39:00
其實貼個程式碼連自己想法什麼都沒交代我就當成是作業啦要不要理當然看個人了
作者: sarafciel (Cattuz)   2018-09-13 09:02:00
http://mis.ndhu.edu.tw/docu/question.htm比起學程式碼 我建議你先學會發問
作者: MOONRAKER (㊣牛鶴鰻毛人)   2018-09-13 11:15:00
Smells like homework.
作者: dmeiki (熊麻吉)   2018-09-13 11:18:00
1. Loop Unrolling 2. Improve temporal locality

Links booklink

Contact Us: admin [ a t ] ucptt.com