日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

京东面试题:二叉树直径

發布時間:2025/6/15 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 京东面试题:二叉树直径 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

?題目:
給定一棵二叉樹,你需要計算它的直徑長度。一棵二叉樹的直徑長度是任意兩個結點路徑長度中的最大值。這條路徑可能穿過根結點。

示例 :
給定二叉樹

1/ \2 3/ \ 4 5
  • 返回 3, 它的長度是路徑 [4,2,1,3] 或者 [5,2,1,3]
class Solution {int ans;int depth(TreeNode* rt){if (rt == NULL) {return 0; // 訪問到空節點了,返回0}int L = depth(rt->left); // 左兒子為根的子樹的深度int R = depth(rt->right); // 右兒子為根的子樹的深度ans = max(ans, L + R + 1); // 計算d_node即L+R+1 并更新ansreturn max(L, R) + 1; // 返回該節點為根的子樹的深度} public:int diameterOfBinaryTree(TreeNode* root) {ans = 1;depth(root);return ans - 1;} };

遍歷每個節點為根節點,找出的該節點左子樹和右子樹的和的最大值,取那個最大值。用到求二叉樹高的知識。

?

參考地址:https://leetcode-cn.com/problems/diameter-of-binary-tree/solution/er-cha-shu-de-zhi-

總結

以上是生活随笔為你收集整理的京东面试题:二叉树直径的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。