给定一个二叉树,找出其最小深度。
最小深度是从根节点到最近叶子节点的最短路径上的节点数量。
说明:叶子节点是指没有子节点的节点。
class Solution {
public:
int minDepth(TreeNode* root) {
if(root == nullptr) return 0;
if(!root->left && !root->right) return 1;
que.push(root);
int res = 1;
while(!que.empty())
{
int size = que.size();
for(int i = 0; i < size; i++)
{
TreeNode* node = que.front();
que.pop();
if(!node->left && !node->right) return res;
if(node->left) que.push(node->left);
if(node->right) que.push(node->right);
}
res++;
}
return res - 1;
}
private:
queue<TreeNode*> que;
};
标签:node,right,int,最小,que,二叉树,111,root,节点
From: https://www.cnblogs.com/lihaoxiang/p/17287496.html