http://en.wikipedia.org/wiki/Binary_GCD_algorithm二進制GCD算法對歐幾里德的算法在現代計算機
此維基百科條目有一個非常不滿意的含義:二進制GCD算法是在同一時間高達60%,比標準的Euclid算法更高效,但作爲遲到1998年,Knuth得出結論,他的現代計算機的效率只有15%的提高。
那又過了15年......這兩種算法今天如何在硬件方面取得進步?
是否二進制GCD繼續優於歐氏算法低級語言但憔悴的背後原因是它在高級語言如Java的複雜性?或者在現代計算中有什麼不同?
爲什麼我關心你可能會問?我恰好需要今天處理1000億個這樣的東西:)這是一個生活在計算時代(可憐的歐幾里得)的乾杯。
你可以有一個規範標準測試他們,就像在一個for循環(對於1000例如大小)創建隨機數的列表,然後對所有對數的計算二進制,而在另一個循環計算歐幾里得最大公約數,什麼是問題?國際海事組織,仍然在現代計算機二進制應該是更快的數字更大。 –
我可以,而且這對於特定OS上的特定處理器上的特定語言來說是相當有代表性的。這是一種常見的數字操作,我更加普遍地好奇今天在高性能應用中首選的解決方案。 – jkschneider
如果你今天做100十億,任何時間花在辯論最有效的解決辦法是要花費你更多的時間損失比簡單地執行一個或另一個會一直。 –