2017-02-23 9 views
0

を並べ替え:アルゴリズム再帰は、私はアルゴリズムを持っている

ALGORITHM F_min1(A[0..n-1]) 
//Input: An array A[0..n-1] of real numbers 
If n = 1 
    return A[0] 
else 
    temp ← F_minl(A[0..n-2]) 
    If temp ≤ A[n-1] 
     return temp 
    else 
     return A[n-1] 

私はそれが配列をソート疑うが、私は正確にどのように知りません。私はそれが最後のものを除いて配列の最小要素を見て、それらを比較し、より大きなものを出力すると思います。

答えて

0

ほとんど; より小さいを返します。 また、配列をまったくソートしません。最小の要素を返すだけです。すなわち

、このようなものを読み取ります

If there is only one element, it must be the right one -- return it. 
Otherwise, 
    recur: find the smallest element in all but the last one. 
    compare the last element to that minimum; return the smaller one. 

あなたはすべての方法最初の通話に戻るときは、配列の最小の要素を持っています。

+0

1つの要素だけを返しますか?例えば、配列が3 7 5 2ならば、3 7 5 2を見て2を1と比較し、1を出力します。その後、3 7 5を見て、3と2を比較して2.Soなどを出力しますか? –

+0

右:これは最小の要素のみを返します。元のリストを変更したり、新しいリストを作成したりすることはありません。 – Prune

関連する問題