問題描述:
給定乙個二叉樹,找出其最大深度。
二叉樹的深度為根節點到最遠葉子節點的距離。
遞迴解法:
class
solution
int left_depth = maxdepth(root->left);
int right_depth = maxdepth(root->right);
return max(left_depth, right_depth) + 1;
}};
非遞迴(深度優先):
class solution
stack
s; bool flag[10000];
int max = 0, i = 0;
while (!s.empty()||root) else
if(flag[i-1]==0) else
};
非遞迴(廣度優先):
class solution
queue
q; q.push(root);
int max = 0;
while (!q.empty())
if (root->right)
}max++;
}return max;
}};
二叉樹的深度 二叉樹的深度 二叉樹最大寬度
題目 輸入一棵二叉樹的根節點,求該樹的深度。從根節點到葉節點依次經過的節點 含根 葉節點 形成樹的一條路徑,最長路徑的長度為樹的深度。例如 給定二叉樹 3,9,20,null,null,15,7 返回它的最大深度 3 根節點加上左右子樹的最大深度就是樹的最大深度。如下 class solution ...
二叉樹的最大深度
1.問題描述 給定乙個二叉樹,找出其最大深度。二叉樹的深度為根節點到最遠葉子節點的距離。樣例給出一棵如下的二叉樹 1 2 3 4 5這個二叉樹的最大深度為3.2.解題思路 如果二叉樹為空,則深度為0 如果不為空,運用遞迴,分別求其左子樹和右子樹的深度,取最大的再加1,因為根節點深度是1,要加進去。3...
二叉樹的最大深度
問題描述 給定乙個二叉樹,找出其最大深度。二叉樹的深度為根節點到最遠葉子節點的距離。樣例 給出一棵如下的二叉樹 1 2 3 4 5這個二叉樹的最大深度為3.實現思路 要求二叉樹的最大深度,首先判斷二叉樹是否為空,若為空,則深度為0。如果不為空,分別求左子樹的深度和右子樹的深度,取最大的那乙個加1,即...