1
我試圖將我的遞歸斐波那契函數轉換爲迭代解決方案。我試過如下:我的斐波那契實現有什麼問題?
fib_itt :: Int -> Int
fib_itt x = fib_itt' x 0
where
fib_itt' 0 y = 0
fib_itt' 1 y = y + 1
fib_itt' x y = fib_itt' (x-1) (y + ((x - 1) + (x - 2)))
我想要的結果保存到變量y
並返回它當x
y
比賽與1
y
,但預期它不工作。對於fib_itt 0
和fib_itt 1
,它工作正常,但對於n > 1
,這是行不通的。例如,fib_rek 2
返回1
和fib_rek 3
回報2
。