-3
我正在用Java處理大量數據。我不知道我是否應該parse
String
到BigInteger
一次,並計算出這個數字的mod
,或者我是否應該更好除以String
成段和parse
這些細分定位到int
和計算mod
這樣。我應該使用BigInteger而不是從字符串解析整數嗎?
我在追求最佳性能。哪種方法更好?
我正在用Java處理大量數據。我不知道我是否應該parse
String
到BigInteger
一次,並計算出這個數字的mod
,或者我是否應該更好除以String
成段和parse
這些細分定位到int
和計算mod
這樣。我應該使用BigInteger而不是從字符串解析整數嗎?
我在追求最佳性能。哪種方法更好?
BigInteger
被做成這樣的事情,目前的實現已經很好的優化了。
另外,我不知道你怎麼想分區繩子,讓你真正得到使用long
S或int
S上的正確mod
結果,而不必採取了一些極端情況,並沒有密集的測試服務。
因此,雖然我同意,如果你真的想實現自己的算法,你實際上應該資料這個,性能比較BigInteger
,我個人不認爲試圖重新發明輪子是必要。我會用BigInteger
。
爲什麼不嘗試這兩個選項,然後基準?這將是一次很好的學習經歷。 – sstan
如果您決定對其進行基準測試,請確保避免[人們犯的常見錯誤](http://stackoverflow.com/questions/504103/how-do-i-write-a-correct-micro-benchmark-in -java)。 – resueman
BigInteger使用int []'實現。 mod操作有兩種不同的算法,根據各種條件選擇,以實現良好的性能。你不可能做得更好(除非你使用的案例非常具體,你可以採取一些通用類中不可能的捷徑)...... – assylias