2025 iThome 鐵人賽
分享至
這題讓我更清楚地知道樹的深度和直徑其實是有關聯的。一開始我以為直徑就是樹的最大深度,但其實不是。直徑指的是兩個節點之間最長的路徑,而這條路通常會經過某個節點的左、右子樹。在寫程式的時候,我發現可以用遞迴的方式,一邊算出每個節點的深度,一邊更新目前最大的直徑。只要在遞迴中回傳「深度」,同時用一個全域變數去紀錄「最大直徑」就能完成。這題讓我學到的重點是,很多關於樹的題目都可以用這種「遞迴回傳一個值,順便更新全域結果」的做法。
IT邦幫忙