力扣刷题
文章平均质量分 91
1
Coder-jzq
我将会在接下来的日子里,整理自己学到的知识点,并分享出来,望能够给大家带来帮助。希望在这个过程里,同时见证了自己的进步。
展开
-
力扣每日一题(2023年2月)
利用两个二维度的数组, 分别用来计算 从左侧(i,0)到右侧(i,j)的前缀和,以及从上侧(0,j)到下侧(i,j)的前缀和。利用前缀和的方法来做,因为使用0/1来表示是否链接, 所以当(0,0)到(0,5)这个横线连通的话前缀和就是5了。出现交换的情况无非 s1为x,s2为y (称之为xy)或者s1为y,s2为x(称之为yx)当当前值已经小于两侧时, 减去两侧值时就是负数,初始记录res=0,则取大值就是0。消除时如图所示,可通过一次交换,消除 两次xy情况 “或者” 消除两次yx情况。原创 2023-02-28 09:50:23 · 207 阅读 · 0 评论 -
数据结构基础(力扣算法)(数组、字符串、链表、栈、部分树)(1-16天计划)
状态转移方程,dp[l][r]=true 并且(l-1)和(r+1)两个位置为相同的字符,此时 dp[l-1][r+1]=true。只需要判断字符串在(l-1)和(r+1)两个位置是否为相同的字符,假如等于深度,则说明当前访问的结点为新的深度的第一个访问,又因为是根右左,所以访问的当前根为这一层最右侧结点。但是要判断换到当前i位置的数是不是1,不为1时,当前位置的数还要判断,所以i–,再i++等于i不变。第三个元素的前缀和为第二个元素到头的和, 第n个元素前缀和为第n-1个元素向前到头的和。原创 2023-02-16 15:03:01 · 716 阅读 · 0 评论 -
数据结构入门(力扣算法)
可以通过先序遍历二叉树,对于每个遍历的结点,局部交换左右子树,每个结点都遍历过来的时候,整个树就交换了。通过一个游标遍历链表,当遇到指定删除的值的时候,进行删除操作, 注意一些细节,在代码中有标注。// 通过先序遍历,遍历二叉树,然后访问结点的时候看是否等于val,等于则返回该结点,每次都将遍历到的结点值加入到集合当中,当bsf中存在两个结点的值等于目标值的时候。出队: 栈2有元素,直接出栈2, 无元素时,先把栈1出到栈2,再从栈2出。比较两个链表的值,将较小的结点拿到新的链表,以尾插法的方式进行插入。原创 2023-01-26 10:51:38 · 1154 阅读 · 0 评论