代码和解析都放在一起了
class Solution {
public:
int run(TreeNode *root) {
//也就是如果是空的话就返回0
if(root==NULL)
return 0;
//在判断他这个结点存在的情况之下,如果他右边结点是null的话,也就是整个树是单边的,所以要求左边的
if(root->left==NULL)
return run(root->right)+1;//加一就是多了一层
//左边同理
if(root->right==NULL)
return run(root->left)+1;
//如果两者都有的话,那就取最小值
return min(run(root->right),run(root->left))+1;
}
};