日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > C# >内容正文

C#

c#二叉树 取叶子节点个数_两种类似但是原理不同的算法求二叉树的所有叶子节点和...

發(fā)布時(shí)間:2024/9/27 C# 86 豆豆
生活随笔 收集整理的這篇文章主要介紹了 c#二叉树 取叶子节点个数_两种类似但是原理不同的算法求二叉树的所有叶子节点和... 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

技術(shù)提高是一個(gè)循序漸進(jìn)的過程,所以我講的leetcode算法題從最簡(jiǎn)單的level開始寫的,然后到中級(jí)難度,最后到hard難度全部完。

目前我選擇C語言,Python和Java作為實(shí)現(xiàn)語言,因?yàn)檫@三種語言還是比較典型的。由于篇幅和精力有限,其他語言的實(shí)現(xiàn)有興趣的朋友請(qǐng)自己嘗試。

初級(jí)難度說的差不多的時(shí)候,我打算再加點(diǎn)其他內(nèi)容,我可能會(huì)從操作系統(tǒng)到協(xié)議棧,從分布式聊到大數(shù)據(jù)框架,從大數(shù)據(jù)聊到人工智能,... ...。

如果有任何問題可以在文章后評(píng)論或者私信給我

我會(huì)持續(xù)分享下去,敬請(qǐng)您的關(guān)注。

LeetCode 404. 左葉子之和(Sum of Left Leaves)

問題描述:

計(jì)算給定二叉樹的所有左葉子之和。

示例:

C語言實(shí)現(xiàn):

我們知道求所有葉子節(jié)點(diǎn)的方法,是遞歸的將左右子樹的葉子節(jié)點(diǎn)值相加。

這道題只是在此基礎(chǔ)上增加了一個(gè)條件而已,即需要加一個(gè)判斷以確定一個(gè)葉子節(jié)點(diǎn)是否是左葉子節(jié)點(diǎn)。

這里我們有兩種方法。

第一種方法:

直接判斷是否是左葉子節(jié)點(diǎn),如果是,那么返回它的值與右邊兄弟節(jié)點(diǎn)遞歸的結(jié)果的和,因?yàn)樗男值芄?jié)點(diǎn)不一定是葉子節(jié)點(diǎn),所以還要遞歸。

如果某節(jié)點(diǎn)的左右節(jié)點(diǎn)都不是葉子節(jié)點(diǎn),那么就返回其左右節(jié)點(diǎn)遞歸的和,這個(gè)很容易理解。

代碼如下:

第二種方法:

這需要定義一個(gè)新的遞歸函數(shù),使得在遍歷的時(shí)候標(biāo)記接下來的節(jié)點(diǎn)是否是左節(jié)點(diǎn)。

如果下面要遍歷的節(jié)點(diǎn)是當(dāng)前節(jié)點(diǎn)的左節(jié)點(diǎn),那么除了將左節(jié)點(diǎn)傳遞給新函數(shù)外,還有傳遞一個(gè)true值給新函數(shù),以標(biāo)記這是一個(gè)左節(jié)點(diǎn),同樣的,如果是右節(jié)點(diǎn),傳遞右節(jié)點(diǎn)和一個(gè)false給新函數(shù)。那么新函數(shù)在做處理的時(shí)候,首先看傳過來的參數(shù),如果標(biāo)記這是一個(gè)左節(jié)點(diǎn),那么返回它的值。否則繼續(xù)遞歸該節(jié)點(diǎn)的子節(jié)點(diǎn)并返回他們的和。

代碼如下:

從代碼來看這兩種實(shí)現(xiàn)都很類似,但是原理是有些不同的。

他們的算法復(fù)雜度是相同的,性能上的表現(xiàn)也基本一致。

python語言的實(shí)現(xiàn):

python的實(shí)現(xiàn)用的是第一種方式,第二種方式,讀者自行嘗試。

代碼如下:

Java語言的實(shí)現(xiàn):

Java 的實(shí)現(xiàn)用的是第一種方式,第二種方式,讀者自行嘗試。

代碼如下:

總結(jié)

以上是生活随笔為你收集整理的c#二叉树 取叶子节点个数_两种类似但是原理不同的算法求二叉树的所有叶子节点和...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。