-1
おはよう。先週私のコースでは、実行時間を計算する方法と、与えられたアルゴリズムの漸化関係を決定する方法を学びました。私は繰り返しアルゴリズムには慣れていますが、再帰アルゴリズムには慣れていません。特に、2つの再帰的な呼び出しが1つずつ繰り返される場合。例えば反復特定のアルゴリズムとの関係
:
FindMin(int A[], int front, int last)
if (last-front <= 1)
return A[front]
else {
midpoint = (front+last)/2
int minFront = FindMin(A, front, midpoint)
minLast = FindMin(A, midpoint+1, last)
return min{minFront, minLast}
}
誰かが私には、この関数/それと類似した機能のための漸化式を決定するのに役立つ、との関係を決定するステップを通して私を導くことができれば、私は(あなたのブーツにキスします実際はそうではありませんが、あなたの助けは非常に高く評価されます)。あなたは二つの等しいサブタスクによってタスクを分割し、業務の一定の数を実行するため
空間の複雑さがO(logn)であることを脇に追加するとよいでしょう。 –