看板 Soft_Job 關於我們 聯絡資訊
我倒不覺得解法三不算演算法啦~~只是這個例子太簡單了, 所以看不出價值而已. 其實演算法的學術論文中, 的確是有在討論 "如果 XXX 指令存在/不存在的話, 問題的時間複雜度是多少? " 這類的問題...., 這裡 XXX 可以用 floor, ceil, bit manipulation 之類東西代入... 只是這種改進比較適合特定應用....如果是做多平台的軟體, 這樣改很痛苦... Bentley 的 programing pearls 1/e 就提到很多這樣的東西, 但是 2/e 就幾 乎沒有了~~ 因為 compiler 的進步幫助很大, 但也不代表有需要不能這樣幹 XD 演算法工程師的定義是什麼? 104 所謂的演算法工程師幾乎都是影像處理相關....好像別的領域都不搞演 算法一樣XD 不知道這個板上大家所謂的演算法工程師是指什麼樣的工作? 我們公司是沒有 這種頭銜, 但是 R&D 工作內容有蠻大部分都是在處理效能的問題, 所以我想 也算演算法工程師吧. Sorting, MST 之類的問題, 基本上演算法都被 proven 已經是 optimal 了, 從這個角度來說, 真的沒啥好改的了. 但是演算法工程師要做的不是發明新算法吧? 這是 theorist 做的事, 我們 做的是應該是 algorthmic engineering; 例如把 algorithm 的 constant factor 變小. 我們公司的同事最近就提出一種新的處理流程, 想法很簡單, 但是使用的記 憶體可以變小好幾倍. 這還蠻讓人驚艷的! 我們公司的產品, 花了十年不斷 改進, 既然還有這麼大的改進空間~~ 不過從演算法的角度來看, 也只是把 constant factor 變小一點而已. 但 是使用的記憶體從 15G 變成小於 4G 也是很驚人. ※ 引述《jengjian (賺錢花錢賺錢花錢)》之銘言: : 解法三: : for(i=0x80000000; i!=0; i=i>>1) : { : sum <<= 1; : if(i&n) : { : sum += (1+n); : } : } : sum >>= 1; -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.161.141.105
Lordaeron:哪是當初寫的時候沒規劃吧. 12/22 15:08
bxxl:通訊IC/系統設計也會用到多名演算法工程師 12/22 17:41
funkastic:真的, 實際情況即使是constant factor的改進就很有用了! 12/22 19:05
dcam:現在還是很多 8/16-bit controller. 12/22 20:56