C++課程學習記錄——遞歸 遞歸 概念: 函數直接或間接調用自身的過程 兩個關鍵要素 1.基本情況(遞歸終止條件):遞歸函數中的一個條件,當滿足該條件時遞歸終止,避免無限遞歸。[直接解決極小規模問題的方法] 2.遞歸表達式(遞歸調用):遞歸函數中的語句用於解決極小規模的問題,再將子問題的答案合併成為當前問題的答案。 基本結構
面試題:實現add(1)(2)(3) //結果 = 6,題的核心就是問的js的柯里化 先説説什麼是柯里化,看過許多關於柯里化的文章,始終搞不太清楚,例如:柯里化(Currying)是把接受多個參數的函數變換成接受一個單一參數(最初函數的第一個參數)的函數,並且返回接受餘下的參數且返回結果的新函數的技術。大多數的blog都是這種説法,説實話我是懵逼的。 我的理解是,curry是一個收集參數的方
1. 示例 週末你帶着TA去電影院看電影,TA問你,咱們現在坐在第幾排啊?電影院裏面太黑了,看不清,沒法數,現在你怎麼辦? 這時可以這樣操作:問前一排的,他是第幾排。前一排的不知道自己是第幾排,繼續向前問。直到第一排,由於他面對着屏幕,知道自己是第一排。之後再給後面的回話:“我是第一排”,後面的知道了前面的,也就知道了自己的(在前面的基礎上+1)。之後再給後面的回覆。 2. 遞歸條件 3.