==========================================================================
将二叉树左节点反转到右节点,右节点反转到左节点,递归实现
public TreeNode invertTree(TreeNode root) {
//递归三步走 1.终止条件 2.一次递归需要做什么 3.这次递归要给上级返回什么结果
if(root==null) return null;
TreeNode rightTree=root.right;
root.right=invertTree(root.left);
root.left=invertTree(rightTree);
return root;
}
=========================================================================
判断叶子节点是否等于递归后相减的值
class Solution {
boolean res=false;
public boolean hasPathSum(TreeNode root, int targetSum) {
if(root==null) return false;
dfs(root,targetSum);
return res;
}
public void dfs(TreeNode node,int sum){
if(node==null) return ;
if(node.leftnull&&node.rightnull){
if(sum==node.val){
res=true;
}
}if(!res){
dfs(node.left,sum-node.val);
dfs(node.right,sum-node.val);
}
}
}
==========================================================================
定义:
二叉搜索树或者是一棵空树,或者是具有下列性质的二叉树:
(1)若左子树不空,则左子树上所有结点的值均小于或等于它的根节点的值;
(2)若右子树不空,则右子树上所有结点的值均大于或等于它的根结点的值;
(3)左、右子树也分别为二叉搜索树;
利用二叉搜索树的特性来验证,左节点的值小于根节点,右节点的值大于根节点,每颗子树都是,
public boolean isValidBST(TreeNode root) {
return inorder(root,Long.MIN_VALUE,Long.MAX_VALUE);
}
public boolean inorder(TreeNode root,long min,long max){
if(root==null) return true;
if(root.val<=min||root.val>=max){
return false;
}
return inorder(root.left,min,root.val)&&inorder(root.right,root.val,max);
}
小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Java工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Java开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Java)
最后如何让自己一步步成为技术专家
说句实话,如果一个打工人不想提升自己,那便没有工作的意义,毕竟大家也没有到养老的年龄。
当你的技术在一步步贴近阿里p7水平的时候,毫无疑问你的薪资肯定会涨,同时你能学到更多更深的技术,交结到更厉害的大牛。
推荐一份Java架构之路必备的学习笔记,内容相当全面!!!
成年人的世界没有容易二字,前段时间刷抖音看到一个程序员连着加班两星期到半夜2点的视频。在这个行业若想要拿高薪除了提高硬实力别无他法。
你知道吗?现在有的应届生实习薪资都已经赶超开发5年的程序员了,实习薪资26K,30K,你没有紧迫感吗?做了这么多年还不如一个应届生,真的非常尴尬!
进了这个行业就不要把没时间学习当借口,这个行业就是要不断学习,不然就只能被裁员。所以,抓紧时间投资自己,多学点技术,眼前困难,往后轻松!
【关注】+【转发】+【点赞】支持我!创作不易!
除了提高硬实力别无他法。
你知道吗?现在有的应届生实习薪资都已经赶超开发5年的程序员了,实习薪资26K,30K,你没有紧迫感吗?做了这么多年还不如一个应届生,真的非常尴尬!
进了这个行业就不要把没时间学习当借口,这个行业就是要不断学习,不然就只能被裁员。所以,抓紧时间投资自己,多学点技术,眼前困难,往后轻松!
【关注】+【转发】+【点赞】支持我!创作不易!