我
后來因為程序運行的太快,又增加了皇后的數目,用9皇后來測試,這樣需要輸出352個解了,我仍然沒有意識到輸出對運行時間的影響。直到今天中午多放了一個皇后的時候,才意識到問題的嚴重性:java版運行10皇后如果不輸出結果只需要30~40毫秒,而輸出結果的情況下需要500毫秒左右,輸出成了速度瓶頸。吧前面的測試全部去掉結果輸出部分重新測一遍吧:
java版:




















































javascript(DHTML)版














































groovy版



































javascript(Rhino)版







































其中javascript版由于在IE上運行的時間剛好超過5秒,會收到一個警告,所以是在firefox上測的。
在我的筆記本上測試結果是:
java 版:
---------- run ----------
totle results:724
totle time:40
Normal Termination
輸出完成(耗時 0 秒)。
javascript(DHTML)版
totle results:724
time used:4977
groovy版
用groovy命令運行:
---------- run ----------
totle results:724
totle time:31095
Normal Termination
輸出完成(耗時 32 秒)。
用groovyconsole運行或者編譯成java class后用java命令運行的結果也差不多,都在30~36秒之間。
javascript(Rhino)版
---------- run ----------
totle results:724
time used:3685
Normal Termination
輸出完成(耗時 4 秒)。
結果是:Rhino運行javascript腳本比firefox快一點(而firefox似乎又比IE快一點),總的來說,在這個測試上javascript比java慢一個數量級,而groovy則比javascript慢一個數量級