我有一個問題。我正在實現DPLL算法(我已經完成了)。現在我正在通過標準函數java api計算運行時間。DPLL算法 - 唯一的建議
System.currentTimeMillis();
的問題是,我必須提供測試結果我的問題,但相比於一切,我發現在互聯網上的資源,我的算法運行時間要好得多。現在要麼我找到了有史以來最好的算法實現(即排除),要麼函數返回錯誤的時間。
函數的時間單位是毫秒(ms)? 謝謝大家。
我有一個問題。我正在實現DPLL算法(我已經完成了)。現在我正在通過標準函數java api計算運行時間。DPLL算法 - 唯一的建議
System.currentTimeMillis();
的問題是,我必須提供測試結果我的問題,但相比於一切,我發現在互聯網上的資源,我的算法運行時間要好得多。現在要麼我找到了有史以來最好的算法實現(即排除),要麼函數返回錯誤的時間。
函數的時間單位是毫秒(ms)? 謝謝大家。
System.currentTimeMillis()
的準確性相當差(值以毫秒爲單位跳躍)。
對於基準或精確timeing,更好地利用System.nanoTime()
代替,這確實(比的currentTimeMillis其他)不表示日期/時間,而是一個時間偏移(以納秒爲單位,10^-9秒)。
又是什麼問題?你在問[this](http://docs.oracle.com/javase/7/docs/api/java/lang/System.html#currentTimeMillis%28%29)嗎? – ChiefTwoPencils
,因爲我的算法比其他算法的時間少,以及這個短語的具體含義是什麼:「返回當前時間(以毫秒爲單位)。請注意,儘管返回值的時間單位是毫秒,但是值的粒度取決於基礎操作系統,並且可能會更大,例如,許多操作系統都以幾十毫秒爲單位來測量時間。「 – theblitz
嘗試'nanoTime'和當前的Java。 currentTimeMillis有時可能返回相同的值。此外,最好與自己比較:較大的數據集,如此複雜的等等。 –