记忆性递归:1
前言
在做leetcode的時候聽說了,帶記憶的遞歸,一下很好奇,搜索了一下,講一講自己的體會。
正文
初學者一般都會在斐波那契數列那里學到遞歸,但其實如果計算斐波那契數列達到40以上的時候,普通的遞歸會很慢。例如計算第40位的斐波那契數,普通的遞歸花費大約2s,而記憶性遞歸則需1s就可完成計算。
原因在于普通的遞歸計算f(5)時需要計算f(4)+f(3),計算f(4)時還需要計算f(3)+f(2)但是計算f(3)的時候還要計算f(2)+f(1),這樣重復計算f(2),導致時間花費較多,而這里我們可以用一個數組來儲存一下每一個已經完成計算的斐波那契數,以用于之后需要時調用
代碼展示:
總結
- 上一篇: ubuntu php 中文乱码,Ubun
- 下一篇: mysql无法添加或更新子行_MySQL