-1
我需要幫助爲下面的方法創建效率分析。我需要拿出:Java遞歸效率分析
- 因素影響運行時
- 什麼是被計算(比較,操作)?
- 最佳/最差情況
- 大O符號
這是我到目前爲止有:
- 數組長度
- 數學運算
- 最壞情況和最好的情況是相同的,因爲該方法將運行整個陣列,而不管其內容如何
- 不知道
讓我知道您的想法。
感謝
double sum(double[] array) {
return recursiveSum(array, 0, array.length - 1);
}
double recursiveSum(double[] array, int lo, int hi) {
if (lo == hi) {
return array[lo];
}
int mid = (lo + hi)/2;
double leftsum = recursiveSum(array, lo, mid);
double rightsum = recursiveSum(array, mid+1, hi);
return leftsum + rightsum;
}
我覺得這是期末考試的季節。你知道[主定理](http://en.wikipedia.org/wiki/Master_theorem)嗎? – 2013-05-10 04:34:40
使用循環獲得數組的總和,遞歸是過度的損失 – 2013-05-10 04:34:46
trustme,我很想不必使用遞歸,這不是我的選擇 – bforcer 2013-05-10 04:37:50