LeetCode题目
LeetCode题目
漫步者TZ
一个想用技术让生活变得更进步、世界变得更美好的人
展开
-
leetcode 96 不同的二叉搜索树
文章目录题目思路代码参考链接 题目 思路 需要先拿到左右子树的值,才能判断包括根节点的情况,所以采用后序遍历 考虑三节点模型,根节点,左节点,右节点,返回的路径,会有如下情况,求所有情况的最大值 只返回父节点的值 返回左节点 + 父节点的值 返回右节点、父节点的值 注意:不能返回左节点+父节点+右节点,因为这样就不能和上一层节点形成路径,但是需要做最大值比较 代码 int max=Integer.MIN_VALUE; public int maxPathSum(TreeNode原创 2021-04-30 17:37:29 · 63 阅读 · 1 评论 -
Leetcode 剑指Offer 68-2 二叉树的最近公共祖先
文章目录题目思路代码参考链接 题目 思路 根据p、q在左右子树的情况区分,所以先获取子树的情况,再判断当前节点,是后序遍历 树的先序遍历、中序遍历、后序遍历,都是深度优先遍历,所以是从下至上遍历的,所以获取的节点会是深度最大的节点 设计一个递归函数,若找到p或q,则返回对应节点,对于任一节点,p、q在左右子树的情况有4种 p或q都不在 左右子树,返回 null p或q不在右子树,返回左孩子 p或q不在左子树,返回右孩子 左子树和右子树都能找到p或q,返回当前节点,且说明当前节点是最近公共祖先 代原创 2021-04-24 19:51:07 · 146 阅读 · 0 评论 -
leetcode k个一组反转链表
leetcode 25 给你一个链表,每k个节点一组进行翻转,请你返回翻转后的链表。 k是一个正整数,它的值小于或等于链表的长度。 如果节点总数不是k的整数倍,那么请将最后剩余的节点保持原有顺序。 示例: 给你这个链表:1->2->3->4->5 当k= 2 时,应当返回: 2->1->4->3->5 当k= 3...原创 2020-04-15 20:11:03 · 116 阅读 · 0 评论