今天复习dfs
这个题很简单 我们用dfs搜
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode *right; * TreeNode() : val(0), left(nullptr), right(nullptr) {} * TreeNode(int x) : val(x), left(nullptr), right(nullptr) {} * TreeNode(int x, TreeNode *left, TreeNode *right) : val(x), left(left), right(right) {} * }; */ class Solution { public: int minDepth(TreeNode* root) { if (!root) return 0; int left = minDepth(root->left); int right = minDepth(root->right); if(!left || !right) return left+right+1;//其中有一个是0; //现在一个节点必定有左子树和右子数 return min(left,right)+1;//取一个最小值再加1就是深度 } };