精華區beta Gossiping 關於我們 聯絡資訊
說的沒錯 那你知道sqrt函數 用牛頓法求解 傳說中有一個神一般的初始值嗎 0x5f3759df 這是雷神之锤3 John Carmack在90年代CPU很弱時候 在3D圖形裡面 在做開平方運算時候 所猜測的神解答 讓那個時代程式可以跑3D運算 現在的Open CV函數庫也有調用這初始值 當年的程式碼 後人註解就是WTF? i = 0x5f3759df - ( i >> 1 ); // what the fuck? 詳細故事請參閱 http://www.cnblogs.com/pkuoliver/archive/2010/10/06/sotry-about-sqrt.html 寫程式和寫的神 是兩種不同事情啊 ※ 引述《hihijames (123)》之銘言: : 單就你那個問題 : "既然功能都一樣 怎麼比較哪個比較好?" : 本科的當然都知道用時間、空間複雜度比較 : 用簡單一點的說法 : 例如,一樣是從1加到n的程式 : 你可以用for(i=o;i<=n;i++) : sum=sum+i : 也可以用sum=n*(n+1)/2 : 前者要重複執行該程式n次才能求出總和 : 後者只要執行一次就可以了 : 這樣一個簡單的程式,寫法不同,速度就會有很大的差別 : 更不用說是複雜龐大的程式了,速度可能會從幾秒鐘差到幾分鐘以上 : 後者不過是個簡單的梯形公式,國小就教過了 : 但你信不信很多人還是用前者那樣的寫法在寫1加到n : 為什麼? 不是不會 是沒想到 : 資訊科技的中心思想,也就是解決問題的方法 : 如何更快,更有效率的解決一個問題,就是科技 : 而怎樣才是一個優秀的工程師,就是在於是否具備這樣的能力 : 而這種事可能不是爆了多久的肝,或是寫了多少程式就能擁有的 : 所以為什麼有比爾蓋茲寫程式寫到變首富,卻也有人整天寫程式,但寫不出個東西 : 主要就是看個人是否具備靈活,創新的思維,當然不只這些 : 還有太多太多需要學習的 : 所以門檻高不高? : 端看你想要到多高 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 71.231.106.235 ※ 文章網址: https://www.ptt.cc/bbs/Gossiping/M.1424409558.A.6A1.html ※ 編輯: LDPC (71.231.106.235), 02/20/2015 13:20:06
cuteSquirrel: 02/20 13:20
KJFC: 有看過 02/20 13:21
lazur: LDPC管這麼多 02/20 13:24
Riyuberg: 看不懂 難怪我無法進GG 02/20 13:29
DarkIllusion: 以前看過 真的是滿神奇的 02/20 13:30
bitcch: 這是演算法的藝術啊 02/20 13:31
cs853: 所以他是外星人? 02/20 13:50
JeanSijhih: 這是神的領域了 02/20 13:56
s755369: 超神 02/20 14:14
abramtw: 不懂 0x5f3759df是數字嗎? 02/20 14:27
mvbkoko: John Carmack確實是coding之神,沒有之一 02/20 14:31
jemic: 這個牛,很多速解和奇觀都在quake看得到 02/20 14:42
xm3u4vmp6: 推 有沒有其他有趣的演算法或公式 02/20 16:55
legendmtg: 這個數字神的是 他算起來比之後用理論求出的數字還快 02/20 18:40
jackcorner: 這東西就像秘方一樣 碰過類似的 的確充滿驚嘆與wtf 02/20 22:50
HuangJC: 發明人是gg了嗎?有問題怎麼不直接問他,只註解wtf 02/20 23:57