编写一些高效率的函数,只使用指向二叉树,设计一个算法求出指定节点在二叉树中的层次_1

  编写一些高效率的函数,只使用指向二叉树,设计一个算法求出指定节点在二叉树中的层次

  

题目一

 

  解法

  /** *二叉树节点的定义。*公共类TreeNode { * int val * TreeNode left * TreeNode right * TreeNode(){ } * TreeNode(int val){ this。val=val} * TreeNode(int val,TreeNode left,TreeNode right){ * this。val=val* this . left=left * this . right=right * } * } */class解决方案{ public int max depth(TreeNode root){ return method(root);} int方法(TreeNode root){ if(root==null){ return 0;} int l=method(root。左);int r=方法(根。对);返回Math.max(l,r)1;}}

题目二

 

  解法

  /** *二叉树节点的定义。*公共类TreeNode { * int val * TreeNode left * TreeNode right * TreeNode(){ } * TreeNode(int val){ this。val=val} * TreeNode(int val,TreeNode left,TreeNode right){ * this。val=val* this . left=left * this . right=right * } * } */class解{ int ans=0;public int diameterOfBinaryTree(TreeNode root){ method(root);返回ans}公共int方法(TreeNode root){ if(root==null){ return 0;} int l=method(root。左);int r=方法(根。对);ans=Math.max(ans,l r);返回Math.max(l,r)1;}}

题目三

 

  解法

  /** *二叉树节点的定义。*公共类TreeNode { * int val * TreeNode left * TreeNode right * TreeNode(){ } * TreeNode(int val){ this。val=val} * TreeNode(int val,TreeNode left,TreeNode right){ * this。val=val* this . left=left * this . right=right * } * } */class Solution { public int minDepth(TreeNode root){ if(root==null返回0;如果(根。left==空根。right==null)返回1;int min=整数MAX _ VALUEif(root.left!=null){ min=Math.min(min,minDepth(root。左));} if(root.right!=null){ min=Math.min(min,minDepth(root。右));} return min 1;}}

题目四

 

  解法

  /** *二叉树节点的定义。*公共类TreeNode { * int val * TreeNode left * TreeNode right * TreeNode(){ } * TreeNode(int val){ this。val=val} * TreeNode(int val,TreeNode left,TreeNode right){ * this。val=val* this . left=left * this . right=right * } * } */class Solution { list integer list=new ArrayListInteger();public list integer preorders traversal(TreeNode root){ method(root);退货单;}公共空间方法(TreeNode root){ if(root==null){ return;} //前序列表。添加(根。val);方法(根。左);//中序方法(根。对);//后序}}到此这篇关于剑指提供之爪哇算法习题精讲二叉树专题篇下的文章就介绍到这了,更多相关爪哇二叉树内容请搜索盛行信息技术以前的文章或继续浏览下面的相关文章希望大家以后多多支持盛行它!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: