フィボナッチ数を計算する2つの関数は、どちらも正しく動作しますが、別の方法で記述されています。f#fibbonaci効率的なアルゴリズム
あなたはより良い、より効率的な、コードをより理解しやすいと思いますか?
let fibe n =
let rec loop acc1 acc2 n =
match n with
| n when n = 0I -> acc1
| x -> loop acc2 (acc1 + acc2) (x - 1I)
loop 0I 1I n
let myfib n =
if n = 0I then 0I
else if n = 1I then 1I
else
let rec loop i f s =
match i with
| x when x = n -> f+s
| x when x < n -> loop (i+1I) s (s+f)
loop 2I 0I 1I
http://codereview.stackexchange.com/ – tvanfosson