Java:什麼是遞歸?

  • 遞歸:在一個方法內部對自身進行調用。
  • 利用遞歸可以用簡單的程序來解決一些複雜的問題。比如:裴波那契數列的計算、漢諾塔、快排等問題。
  • 遞歸結構包括兩個部分:
    1、定義遞歸頭。解答:什麼時候不調用自身方法。如果沒有頭,將陷入死循環,也就是遞歸的結束條件。
    2、遞歸體。解答:什麼時候需要調用自身方法。
    這裏寫圖片描述
    運行結果 return 5*4*3*2*1
  • 爲了更深刻的理解舉一個小例子
    這裏寫圖片描述
  • 遞歸的缺陷
    簡單的程序是遞歸的優點之一。但是遞歸調用會佔用大量的系統堆棧,內存耗用多,在遞歸調用層次多是速度要比循環慢的多,所以在使用遞歸時要慎重。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章