程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

【華為機試真題 Python實現】動態規劃-如何寫一個遞歸函數

編輯:Python

文章目錄

  • 前言
  • 如何寫一個遞歸函數
  • DP2 跳台階
  • 小兔子繁殖


前言

《華為機試真題》專欄含牛客網華為專欄、華為面經試題、華為OD機試真題。

如果您在准備華為的面試,期間有想了解的可以私信我,我會盡可能幫您解答,也可以給您一些建議!

本文解法非最優解(即非性能最優)。

如何寫一個遞歸函數

看過上一篇文章的同學可能也發現了,遞歸函數是求解動態規劃問題的一個很好的方法,那我們要如何寫一個遞歸函數呢?

如果一個函數在執行過程中,直接或者間接的調用自己,我們稱之為遞歸函數。

遞歸的應用場景,鏈表操作、二叉樹操作、排列組合問題和動態規劃問題等,他們有一個特點就是隨著遞歸深度的增加,問題規模在不斷減小。

比如我們在學校匯報演出的大禮堂裡,你想知道你在第幾排時會怎麼做呢?
方案一: 走到第一排再一排一排的數到你所在的這一排。
方案二: 問前一排的同學是第幾排,在他的基礎上+1就是當前的排數,前一排也不清楚的話重復問他的前一排,直到問到第一排的同學。

這就是一個簡單的遞歸函數:


  1. 上一篇文章:
  2. 下一篇文章:
相關文章
    没有相关文章
Copyright © 程式師世界 All Rights Reserved