递归
SSkinH
这个作者很懒,什么都没留下…
展开
-
二叉树前中后序遍历相关
前序的第一个节点代表了根,找到其在中序中的位置index,index左边就是其左子树,右边位右子树。且可以得到左右子树的大小,再从前序数组中取出右子树,再次递归这个过程。前序的第二个节点是左子树的根,在后序数组中找到左子树的根的位置就能知道左子树的大小,也就知道右子树的大小。此外,可以先创建一个hash表,使得可以快速找到根节点在中序数组的位置,优化。边界条件为无元素,返回null即可。求后序数组的话,则无需创建节点。需要记录两个数组的左右边界!前序是中左右,后续是左右中。原创 2024-07-27 17:34:35 · 232 阅读 · 0 评论 -
LC2928给小朋友们分糖果
只有3个小朋友,限制每个小朋友分到不超过limit个糖果,总共有n个糖,分完的方法有几种?插入两个隔板,将n分为三块,每块大小不超过limit,的分法有几种。第一个人分x,还剩n-x。原创 2024-06-03 15:45:32 · 324 阅读 · 0 评论 -
二叉树的最近公共祖先
题目:LCA(lowest common ancestor),给树和两节点,求这两节点的LCA。2.返回值:分别在左右返回根,都没有返回NULL,有一个返回那个。3.边界条件:访问到null 或访问到目标点,直接返回。1.拆分问题:在左右子树上找这两个点。原创 2024-04-03 23:33:51 · 183 阅读 · 1 评论