引用:
作者vxr
如果條件一的問題..
因為迴圈次數大...
可以的話用倍數去算...
迴圈次數將會大幅減少...
否則你要慢慢loop到31次嗎?...
|
一般 i++ loop 的時間複雜度是 O(n),而像這種迴圈最大值很小(<100)的狀況下通常會比用倍數迴圈的 O(log n) 快。
另外,不應該在這裡考慮效能問題,瓶頸不太可能會出現在這。
以我n年的實務經驗,我覺得設計時有兩個重點,分享一下:
1. 不要過度設計
2. 不要在設計時考慮效能問題,不然容易失去重點
我不熟 java,不然我給的答案應該也是 loop + if/else。