国产亚洲精品福利在线无卡一,国产精久久一区二区三区,亚洲精品无码国模,精品久久久久久无码专区不卡

當(dāng)前位置: 首頁(yè) > news >正文

淘寶客的網(wǎng)站是自己做的嗎深圳專(zhuān)業(yè)seo外包

淘寶客的網(wǎng)站是自己做的嗎,深圳專(zhuān)業(yè)seo外包,湖南省人民政府最新任免,上海網(wǎng)站seo優(yōu)化遞歸算法 一、嵌套調(diào)用的過(guò)程二、遞歸的基本原則1、遞歸的基本原則2、無(wú)限遞歸調(diào)用3、正常遞歸調(diào)用4、階乘問(wèn)題5、力扣:231. 2 的冪6、力扣面試題 08.05. 遞歸乘法7、力扣、326. 3 的冪8、力扣342. 4的冪 一、嵌套調(diào)用的過(guò)程 def show1():print("show 1 run s…

在這里插入圖片描述


遞歸算法

  • 一、嵌套調(diào)用的過(guò)程
  • 二、遞歸的基本原則
    • 1、遞歸的基本原則
    • 2、無(wú)限遞歸調(diào)用
    • 3、正常遞歸調(diào)用
    • 4、階乘問(wèn)題
    • 5、力扣:231. 2 的冪
    • 6、力扣面試題 08.05. 遞歸乘法
    • 7、力扣、326. 3 的冪
    • 8、力扣342. 4的冪

一、嵌套調(diào)用的過(guò)程

def show1():print("show 1 run start")show2()print("show 1 run end")def show2():print("show 2 run start")show3()print("show 2 run end")def show3():print("show 3 run start")print("show 3 run end")show1()

執(zhí)行結(jié)果

show 1 run start
show 2 run start
show 3 run start
show 3 run end
show 2 run end
show 1 run end

嵌套調(diào)用的過(guò)程圖解
在這里插入圖片描述

函數(shù)一旦執(zhí)行結(jié)束,一會(huì)先回到調(diào)用處

二、遞歸的基本原則

1、遞歸的基本原則

遞歸函數(shù)通常遵循以下原則:

  • 定義基本情況:確定一個(gè)或多個(gè)輸入的特殊情況,當(dāng)滿(mǎn)足這些條件時(shí),遞歸函數(shù)將直接返回結(jié)果而不再調(diào)用自身。
  • 減小問(wèn)題規(guī)模:通過(guò)調(diào)用自身來(lái)解決一個(gè)規(guī)模更小的問(wèn)題,這樣每次遞歸調(diào)用都在問(wèn)題規(guī)模上取得了進(jìn)展。也就是需要一個(gè)已定義好的規(guī)則來(lái)使其它非基本的情況轉(zhuǎn)化為基本情況。
  • 終止條件:遞歸函數(shù)必須包含能夠?qū)е潞瘮?shù)不再遞歸調(diào)用的條件,以避免無(wú)限遞歸。

2、無(wú)限遞歸調(diào)用

def show():print("show run start")show()print("show run end")show()

無(wú)限遞歸調(diào)用報(bào)錯(cuò)
RecursionError: maximum recursion depth exceeded while calling a Python object

在這里插入圖片描述

在這里插入圖片描述

3、正常遞歸調(diào)用

def show(n):print(f"show run start-{n}")if n<10:show(n+1)print(f"show run end-{n}")show(1)

遞歸函數(shù)同嵌套函數(shù)調(diào)用一樣:誰(shuí)調(diào)用的你,返回到調(diào)用處

show run start-1
show run start-2
show run start-3
show run start-4
show run start-5
show run start-6
show run start-7
show run start-8
show run start-9
show run start-10
show run end-10
show run end-9
show run end-8
show run end-7
show run end-6
show run end-5
show run end-4
show run end-3
show run end-2
show run end-1進(jìn)程已結(jié)束,退出代碼為 0

當(dāng)代碼執(zhí)行到24行時(shí),先恢復(fù)show(9)的狀態(tài)
show(9)是由show(8)的調(diào)用的,先恢復(fù)show(8)的狀態(tài)
依次
在這里插入圖片描述
在這里插入圖片描述

與嵌套函數(shù)調(diào)用過(guò)程相比:嵌套函數(shù)是由多個(gè)函數(shù)完成的,遞歸是有1個(gè)函數(shù)完成的

4、階乘問(wèn)題

def f(n):if n==0 or n==1:return 1return n*f(n-1)print(f(5))

執(zhí)行流程:

5 * f(4)
5 * (4 * f(3))
5 * (4 * (3 * f(2)))
5 * (4 * (3 * 2 * f(1))))
5 * (4 * (3 * 2 * 1))
5 * (4 * (3 * 2))
5 * (4 * 6)
5 * 24
120

5、力扣:231. 2 的冪

簡(jiǎn)單

給你一個(gè)整數(shù) n,請(qǐng)你判斷該整數(shù)是否是 2 的冪次方。如果是,返回 true ;否則,返回 false 。
如果存在一個(gè)整數(shù) x 使得 n == 2x ,則認(rèn)為 n 是 2 的冪次方。

示例 1:
輸入:n = 1
輸出:true
解釋:20 = 1

示例 2:
輸入:n = 16
輸出:true
解釋:24 = 16

示例 3:
輸入:n = 3
輸出:false
示例 4:
輸入:n = 4
輸出:true

示例 5:
輸入:n = 5
輸出:false

class Solution:def isPowerOfTwo(self, n: int) -> bool:def panduan(s):if s <= 0:return Falseelif s == 1:return Trueelif s == 2:return Trueelse:if s % 2 == 0:return panduan(s // 2)else:return Falsereturn panduan(n)

6、力扣面試題 08.05. 遞歸乘法

中等

遞歸乘法。 寫(xiě)一個(gè)遞歸函數(shù),不使用 * 運(yùn)算符, 實(shí)現(xiàn)兩個(gè)正整數(shù)的相乘??梢允褂眉犹?hào)、減號(hào)、位移,但要吝嗇一些。
示例1:
輸入:A = 1, B = 10
輸出:10

示例2:
輸入:A = 3, B = 4
輸出:12
提示:
保證乘法范圍不會(huì)溢出

class Solution:def multiply(self, A: int, B: int) -> int:if B == 0:return 0return A + self.multiply(A, B - 1)r=Solution()
A=3
B=4
print(r.multiply(A, B))

執(zhí)行流程

3+multiply(3, 3)
6+multiply(3, 2)
9+multiply(3, 1)
12+multiply(3, 0)

7、力扣、326. 3 的冪

簡(jiǎn)單

給定一個(gè)整數(shù),寫(xiě)一個(gè)函數(shù)來(lái)判斷它是否是 3 的冪次方。如果是,返回 true ;否則,返回 false 。
整數(shù) n 是 3 的冪次方需滿(mǎn)足:存在整數(shù) x 使得 n == 3x

示例 1:
輸入:n = 27
輸出:true

示例 2:
輸入:n = 0
輸出:false

示例 3:
輸入:n = 9
輸出:true

示例 4:
輸入:n = 45
輸出:false

class Solution:def isPowerOfTwo(self, n: int) -> bool:def panduan(s):if s <= 0:return Falseelif s == 1:return Trueelif s % 3 != 0:return Falseelse:return panduan(s / 3)return panduan(n)r=Solution()
n=9
print(r.isPowerOfTwo(n))

8、力扣342. 4的冪

簡(jiǎn)單

給定一個(gè)整數(shù),寫(xiě)一個(gè)函數(shù)來(lái)判斷它是否是 4 的冪次方。如果是,返回 true ;否則,返回 false 。
整數(shù) n 是 4 的冪次方需滿(mǎn)足:存在整數(shù) x 使得 n == 4x

示例 1:
輸入:n = 16
輸出:true

示例 2:
輸入:n = 5
輸出:false

示例 3:
輸入:n = 1
輸出:true

class Solution:def isPowerOfTwo(self, n: int) -> bool:def panduan(s):if s <= 0:return Falseelif s == 1:return Trueelif s % 4 != 0:return Falseelse:return panduan(s // 4)return panduan(n)r=Solution()
n=1
print(r.isPowerOfTwo(n))
http://aloenet.com.cn/news/44683.html

相關(guān)文章:

  • 做網(wǎng)站開(kāi)發(fā)需要學(xué)那些東西安裝百度到手機(jī)桌面
  • 網(wǎng)頁(yè)設(shè)計(jì)素材網(wǎng)站有哪些怎么自己弄一個(gè)網(wǎng)站
  • 學(xué)室內(nèi)設(shè)計(jì)真的那么慘嗎北京seo專(zhuān)員
  • 自己做的小網(wǎng)站如何發(fā)布軟文范例
  • 重慶模板網(wǎng)站多少錢(qián)烘焙甜點(diǎn)培訓(xùn)學(xué)校
  • 制作網(wǎng)站程序黑帽seo培訓(xùn)大神
  • 手機(jī)在線(xiàn)銷(xiāo)售網(wǎng)站 - 百度百度人工客服電話(huà)怎么轉(zhuǎn)人工
  • 學(xué)習(xí)做網(wǎng)站的網(wǎng)站愛(ài)站關(guān)鍵詞挖掘工具
  • 網(wǎng)游網(wǎng)站開(kāi)發(fā)如何做好搜索引擎優(yōu)化工作
  • 關(guān)注建設(shè)銀行網(wǎng)站如何讓網(wǎng)站被百度收錄
  • 貴陽(yáng)建設(shè)網(wǎng)站公司5118
  • 做帶會(huì)員后臺(tái)的網(wǎng)站用什么軟件阿里指數(shù)官方網(wǎng)站
  • 醫(yī)療圖片做網(wǎng)站圖片鎮(zhèn)江網(wǎng)絡(luò)
  • 沈陽(yáng)順天建設(shè)集團(tuán)網(wǎng)站成都seo經(jīng)理
  • 微信平臺(tái)制作網(wǎng)站開(kāi)發(fā)站長(zhǎng)之家怎么用
  • 做阿里巴巴網(wǎng)站免費(fèi)的網(wǎng)站域名查詢(xún)
  • 品牌宣傳網(wǎng)站建設(shè)網(wǎng)站賣(mài)鏈接
  • 百度云免費(fèi)空間seo主要做什么工作
  • 肇東網(wǎng)站建設(shè)知了seo
  • 怎么做網(wǎng)站的輪播圖荊門(mén)今日頭條新聞發(fā)布
  • 中國(guó)做的比較好的網(wǎng)站網(wǎng)站提交收錄軟件
  • 網(wǎng)站開(kāi)發(fā) 哪個(gè)工具更快seo網(wǎng)站關(guān)鍵詞排名軟件
  • cms做企業(yè)網(wǎng)站6長(zhǎng)沙網(wǎng)站seo方法
  • 石家莊網(wǎng)站建設(shè)案例數(shù)據(jù)指數(shù)
  • 外國(guó)人做的漢字網(wǎng)站關(guān)鍵詞搜索排名查詢(xún)
  • 網(wǎng)站建設(shè)電子書(shū)dw網(wǎng)頁(yè)制作教程
  • 學(xué)校網(wǎng)站建設(shè)項(xiàng)目管理報(bào)告買(mǎi)外鏈
  • 寧波方正建設(shè)監(jiān)理網(wǎng)站seo助理
  • 做服務(wù)的網(wǎng)站html網(wǎng)頁(yè)制作模板代碼
  • 中國(guó)建設(shè)銀行官網(wǎng)站保本理財(cái)培訓(xùn)機(jī)構(gòu)咨詢(xún)