leetcode面试篇(下)刷题计划
文章平均质量分 83
结合datawhate提供的学习计划,进行刷题。(C++语言)
主要都是面试常考问题。差不多一篇文章3道题这样,部分文章会补充知识点
X在敲AI代码
这个作者很懒,什么都没留下…
展开
-
力扣刷题44-46(力扣0062/0152/0198)
动态规划的三道题,顺便总结了一下动态规划的模板原创 2024-03-25 20:19:54 · 934 阅读 · 2 评论 -
力扣刷题31-33(力扣 0024/0070/0053)
今日题目: 题目:给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)看了例子,考虑一下三个的情况下最后一个是否交换,看这个栗子的情况,最后一个不用管,那就简单了。直接for循环i一步走两个,凉凉交换即可代码: 写代码的时候犯了个sb错误:代码中使用了 来分配内存,应该使用 来释放内存,而不是 在 C++ 中,建议尽量避免使用 和 ,而是使用 和 运算符来进行内存分配和释放。本题over假设你正在爬楼梯。需要 阶原创 2024-03-22 15:08:48 · 876 阅读 · 0 评论 -
刷题28-30(力扣0322/0078/0221)
创建了一个长度为 amount+1 的数组 dp,dp[i] 表示凑齐金额 i 所需的最少硬币数目。放的话,首先数量要+1,谁的数量呢?大概意思是:最外层遍历数组的元素,内层循环:复制上一步的子集,然后将当前元素加到复制的子集里面 ,构成新的子集。基本思路:将金币从大到小开始排列,先拿最大的,再拿后面次大的,以此类推。这样,通过动态规划算法,我们可以高效地找到给定矩阵中的最大正方形的边长。的过程中,记录下出现的最大边长值,即可得到最大正方形的边长。最后,返回最大正方形的面积,即边长的平方。原创 2024-03-21 17:11:41 · 822 阅读 · 1 评论 -
力扣(103、236、104)
3.确定单层递归的逻辑:先求它的左子树的深度,再求右子树的深度,最后取左右深度最大的数值 再+1 (加1是因为算上当前中间节点)就是目前节点为根节点的树的深度。1.确定递归函数的参数和返回值:参数就是传入树的根节点,返回就返回这棵树的深度,所以返回值为int类型。的基础上进行改进,首先蛇形走位(先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)如果是奇数行正序进入队列,偶数行逆序进入----》奇数行元素从队头插入,偶数行从队尾插入。题目大意:将原先的层次遍历改为蛇形遍历,那么我们需要在。原创 2024-03-14 15:46:38 · 467 阅读 · 0 评论 -
力扣-树105、110、98
节点的「平衡因子 balance factor」定义为节点左子树的高度减去右子树的高度,同时规定空节点的平衡因子为 0。:一种结构平衡的二叉搜索树。即叶节点高度差的绝对值不超过 1,并且左右两个子树都是一棵平衡二叉搜索树。:也叫做二叉查找树、有序二叉树或者排序二叉树。如果我们以中序遍历的方式遍历整个二叉搜索树时,会得到一个严格递增序列.内完成插入、查找和删除操作。最早被发明的平衡二叉搜索树为。那么很明显这道题,我们只需要中序遍历一下就可啦。归为一句话(左<根<右)原创 2024-03-17 17:11:50 · 358 阅读 · 0 评论 -
力扣刷题---岛屿问题--c++
力扣刷题---岛屿问题--c++版(参考题解)原创 2024-03-18 16:04:22 · 820 阅读 · 0 评论 -
力扣刷题-0958/0543/0662
Day09知识点:完全二叉树:在一棵完全二叉树中,除了最后一层外,所有层都被完全填满,并且最后一层中的所有节点都尽可能靠左。最后一层(第h层)中可以包含1到个节点,当最后一层全部都满(个节点)的时候,就称为满二叉树。题目大意:给你一棵二叉树的根节点root,请你判断这棵树是否是一棵。思路:尝试用层次遍历解决,再深入思考一下,在遍历到当前节点的时候 ,前面如果已经出现过空节点,那他一定不是完全二叉树。于是:层次遍历二叉树,无论节点是否存在,都放入队列中,当出现空节点的时候标记一下;原创 2024-03-19 15:05:33 · 786 阅读 · 0 评论 -
力扣112、113、101--树
思路: 我们按照 「根结点 -> 右子树 -> 左子树」 的顺序访问,就可以保证每层都是最先访问最右边的节点的。每次新的一层,就将节点的值放入到数组中。方法一:横向思考:最右边的就是每一层的最右边的一个节点---》层次遍历,每次队列出完一行,一层到最后的时候,就是最右边的节点。正确做法:左右都存在的情况下,递归的判断,L->right==R->left R->right==L->left;,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。值是独立的,不会影响到之前的调用。原创 2024-03-16 21:18:13 · 386 阅读 · 0 评论