/** * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * }; */ class Solution { public: /** * * @param root TreeNode类 * @return int整型 */ int run(TreeNode* root) { // write code here if(root == NULL) return 0; int leftTreeRun = 0; if(root->left != NULL) leftTreeRun = run(root->left); int rightTreeRun = 0; if(root->right != NULL) rightTreeRun = run(root->right); if(leftTreeRun == 0 || rightTreeRun == 0) { if(leftTreeRun > rightTreeRun) return 1 + leftTreeRun; else return 1 + rightTreeRun; } else { if(leftTreeRun < rightTreeRun) return 1 + leftTreeRun; else return 1 + rightTreeRun; } } };