码迷,mamicode.com
首页 > 其他好文 > 详细

二叉树常见题目

时间:2018-07-09 01:11:58      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:node   evel   bsp   tree   节点   mat   null   pre   题目   

一、求二叉树的最大深度

public int maxDepth(Node node){
        if(node == null) return 0;
        int left = maxDepth(node.left);
        int right = maxDepth(node.right);
        int height = Math.max(left,right)+1;
        return height;
    }

二、二叉树的节点数

 public int countTree(Node node){
        if(node == null) return 0;
        int left = countTree(node.left);
        int right = countTree(node.right);
        int count = left+right+1;
        return count;
    }

 

三、二叉树中叶子节点个数

    public int numOfleaf(Node node){
        if(node == null) return 0;
        if(node.left==null && node.right==null) return 1;
        int result = numOfleaf(node.left)+numOfleaf(node.right);
        return result;
    }

四、二叉树第K层节点个数

 public int numOfKLevel(Node node,int k){
        if(node == null || k<0) return 0;
        if(k==1) return 1;
        int left = numOfKLevel(node.left,k-1);
        int right = numOfKLevel(node.right,k-1);
        return left+right;
    }

 

二叉树常见题目

标签:node   evel   bsp   tree   节点   mat   null   pre   题目   

原文地址:https://www.cnblogs.com/yingpu/p/9281910.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!