LeetCode-222-二叉樹的節點數-C語言和java語言

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);
	}

參考資料

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章