数据结构与算法
文章平均质量分 79
yanglee0
这个作者很懒,什么都没留下…
展开
-
【贪心算法】leetcode刷题
贪心算法无固定套路。核心思想:先找局部最优,再扩展到全局最优。原创 2023-08-04 17:17:01 · 1700 阅读 · 0 评论 -
【二叉树】刷题二(以递归写法为主)
本题中,在递归函数有返回值的情况下:如果要搜索一条边,递归函数返回值不为空的时候,立刻返回,如果搜索整个树,直接用一个变量left、right接住返回值,这个left、right后序还有逻辑处理的需要,也就是后序遍历中处理中间节点的逻辑(也是回溯)。如果找到一个节点,发现左子树出现结点p,右子树出现节点q,或者 左子树出现结点q,右子树出现节点p,那么该节点就是节点p和q的最近公共祖先。,说明找到 q p ,则将其返回,这个返回值,后面在中节点的处理过程中会用到,那么中节点的处理逻辑,下面讲解。原创 2023-07-29 17:31:51 · 246 阅读 · 0 评论 -
【二叉树】刷题一(以递归写法为主)
226.翻转二叉树101. 对称二叉树104.二叉树的最大深度111.二叉树的最小深度222.完全二叉树的节点个数110.平衡二叉树102. 二叉树的所有路径。原创 2023-07-26 17:16:09 · 306 阅读 · 0 评论 -
【二叉树】基础理论:深度搜索和广度搜索(以递归写法为主)
【核心思路】:整个题就是要把树拆成一层一层的,然后每层里面,前一个节点的next指向后一个节点。其实对于oneLayer这一层树的所有节点来说,把他们每个节点的左右取出来,就是下一层的节点了。然后对nextLayer里所有节点,每个节点的next指向后一个节点就可以了。本题目主要注意一下两个图片里的东西即可。原创 2023-07-24 11:54:43 · 261 阅读 · 0 评论 -
【回溯算法】+ Leetcode相关题目
组合问题:N个数里面按一定规则找出k个数的集合切割问题:一个字符串按一定规则有几种切割方式子集问题:一个N个数的集合里有多少符合条件的子集排列问题:N个数按一定规则全排列,有几种排列方式棋盘问题:N皇后,解数独等等代码模板:主要找到和可以从图中看出for循环可以理解是横向遍历,backtracking(递归)就是纵向遍历,这样就把这棵树全遍历完了,一般来说,搜索叶子节点就是找的其中一个结果了。转载 2023-07-19 21:53:46 · 60 阅读 · 0 评论