LeetCode-222-二叉樹的節點數-C語言和java語言
c語言
int countNodes(struct TreeNode* root){
if(!root) return 0;
if(!root->left && !root->right) return 1;
return 1 + countNodes(root->left) + countNodes(root->right);
}
java語言
public int length(TreeNode root) {
if(root==null)return 0;
if(root.left==null&&root.right==null)return 1;
return 1+length(root.left)+length(root.right);
}
public static void main(String[] args) {
TreeNode root = new TreeNode(2);
TreeNode root_l = new TreeNode(2);
TreeNode root_r = new TreeNode(5);
TreeNode root_rl = new TreeNode(5);
TreeNode root_rr = new TreeNode(7);
root.left = root_l;
root.right = root_r;
root_r.left = root_rl;
root_r.right = root_rr;
Solution s =new Solution();
int sum = s.length(root);
System.out.println(sum);
}
參考資料