自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 收藏
  • 关注

原创 图论part4|827. 最大人工岛、127. 单词接龙、463. 岛屿的周长

示例 1:输入:beginWord = "hit", endWord = "cog", wordList = ["hot","dot","dog","lot","log","cog"]输出:5解释:一个最短转换序列是 "hit" -> "hot" -> "dot" -> "dog" -> "cog", 返回它的长度 5。示例 1:输入: grid = [[1, 0], [0, 1]]输出: 3解释: 将一格0变成1,最终连通两个小岛得到面积为 3 的岛屿。463. 岛屿的周长 - 力扣(LeetCode)

2025-03-15 00:10:39 1073

原创 图论part3|101.孤岛的总面积、沉没孤岛、417. 太平洋大西洋水流问题

是否有挨着边的岛屿所以可以先遍历四条边挨着的岛屿,把他们标记为非孤岛。

2025-03-13 23:57:36 980

原创 图论part2|200. 岛屿数量、695. 岛屿的最大面积

【代码】图论part2|200. 岛屿数量、695. 岛屿的最大面积。

2025-03-12 21:09:27 438

原创 图论part1|图论理论基础、深度搜索、广度搜索

【代码】图论part1|图论理论基础、深度搜索、广度搜索。

2025-03-04 13:47:06 565

原创 动态规划part09|188.买卖股票的最佳时机IV 、309.最佳买卖股票时机含冷冻期、714.买卖股票的最佳时机含手续费、股票问题总结

【代码】动态规划part09|188.买卖股票的最佳时机IV 、309.最佳买卖股票时机含冷冻期、714.买卖股票的最佳时机含手续费、股票问题总结。

2025-02-18 15:40:38 366

原创 动态规划part8|121. 买卖股票的最佳时机、122.买卖股票的最佳时机II、123.买卖股票的最佳时机III

由于第一个状态的利润显然为 0,因此我们可以不用将其记录。对于剩下的四个状态,我们分别将它们的最大利润记为 buy1,sell1,buy2,sell2。进行了一次买操作和一次卖操作,即完成了一笔交易;在完成了一笔交易的前提下,进行了第二次买操作;只进行过一次买操作;完成了全部两笔交易。

2025-02-17 13:08:48 332

原创 动态规划part7|198. 打家劫舍、213.打家劫舍II、337.打家劫舍III

【代码】动态规划part7|198. 打家劫舍、213.打家劫舍II、337.打家劫舍III。

2025-02-16 15:09:49 252

原创 动态规划part5|完全背包、518. 零钱兑换 II 、377. 组合总和

【代码】动态规划part5|完全背包、518. 零钱兑换 II 、377. 组合总和。

2025-02-15 17:43:10 290

原创 动态规划06|322. 零钱兑换、279.完全平方数、139.单词拆分、多重背包

【代码】动态规划06|322. 零钱兑换、279.完全平方数、139.单词拆分、多重背包。

2025-02-15 14:06:16 286

原创 动态规划part4|1049. 最后一块石头的重量 II、494. 目标和、474. 一和零

两个石头相撞,结果要么为x-y,要么为y-x无论你怎么两两相碰,永远有的数字前为正号,有的为负号,因此你总可以把最终式化为一堆和减去另外一堆数字和因此我们要找的是这个集合的两个子集之和的最小差要想子集之和差最小,则两者应该尽量接近或者相等这个时候我们就可以把sum/2作为背包容量,使用01背包来解题了。

2025-02-12 16:33:27 283

原创 动态规划part1|理论基础、509. 斐波那契数、70. 爬楼梯、746. 使用最小花费爬楼梯

【代码】动态规划part1|理论基础、509. 斐波那契数、70. 爬楼梯、746. 使用最小花费爬楼梯。

2025-02-09 16:51:25 247

原创 动态规划part3|背包问题、 416. 分割等和子集

第一次接触背包问题,代码随想录介绍的比较详细,需要注意怎么更新dp的数字。注意需要反向对列进行遍历,避免重复加同一个物品。01背包问题的一个应用,思路不难想。416. 分割等和子集。

2025-02-09 16:23:29 777

原创 贪心算法part5|56. 合并区间、738.单调递增的数字、968.监控二叉树

763.划分字母区间。

2025-02-06 16:56:58 675

原创 贪心算法part4-重叠区间问题|452. 用最少数量的箭引爆气球、435. 无重叠区间、763.划分字母区间

【代码】贪心算法part4-重叠区间问题|452. 用最少数量的箭引爆气球、435. 无重叠区间、763.划分字母区间。

2025-02-05 16:29:08 336

原创 贪心算法part1|455.分发饼干、376. 摆动序列 、53. 最大子序和

所以唯一的难点就是如何通过局部最优,推出整体最优。

2025-01-26 16:47:14 312

原创 回溯算法part03|93.复原IP地址、78.子集、90.子集II

【代码】回溯算法part03|93.复原IP地址、78.子集、90.子集II。

2025-01-25 14:00:15 240

原创 回溯part02|39. 组合总和、40.组合总和II、131.分割回文串

【代码】回溯part02|39. 组合总和、40.组合总和II、131.分割回文串。

2025-01-23 15:41:47 169

原创 回溯算法part1| 77. 组合 、216.组合总和III 、 17.电话号码的字母组合

/ -- 常用方法: .length() .append() .toString() .deleteCharAt()

2025-01-22 16:27:35 276

原创 二叉树part08| 669. 修剪二叉搜索树、 108.将有序数组转换为二叉搜索树 、 538.把二叉搜索树转换为累加树

【代码】二叉树part08| 669. 修剪二叉搜索树、 108.将有序数组转换为二叉搜索树 、 538.把二叉搜索树转换为累加树。

2025-01-21 15:50:14 898

原创 二叉树Part7| 235. 二叉搜索树的最近公共祖先、701. 二叉搜索树中的插入操作、450.删除二叉搜索树中的节点

235. 二叉搜索树的最近公共祖先235. 二叉搜索树的最近公共祖先思路: 和part6的最后一题类似,多了二叉搜索树的性质,判断的时候条件改变一下就可以了代码。

2025-01-01 20:13:34 904

原创 二叉树part6|530.二叉搜索树的最小绝对差、501.二叉搜索树的众数、236.二叉树的最近公共祖先

【代码】二叉树part6|530.二叉搜索树的最小绝对差、501.二叉搜索树的众数、236.二叉树的最近公共祖先。

2025-01-01 15:14:35 388

原创 二叉树part4|513.找树左下角的值、112.路径总和、106.从中序和后序遍历构造二叉树、105.从前序和中序遍历序列构造二叉树

【代码】二叉树part4|513.找树左下角的值、112.路径总和、106.从中序和后序遍历构造二叉树、105.从前序和中序遍历序列构造二叉树。

2024-12-26 18:53:11 260

原创 第六章 二叉树 part05|654.最大二叉树、617.合并二叉树、700.二叉搜索树中的搜索、98.验证二叉搜索树

【代码】第六章 二叉树 part05|654.最大二叉树、617.合并二叉树、700.二叉搜索树中的搜索、98.验证二叉搜索树。

2024-12-26 18:52:29 301

原创 第六章 二叉树part03|110.平衡二叉树 257.二叉树的所有路径 404.左子叶子和 222.完全二叉树的节点个数

【代码】第六章 二叉树part03|110.平衡二叉树 257.二叉树的所有路径 404.左子叶子和 222.完全二叉树的节点个数。

2024-12-21 14:46:01 603

原创 第六章 二叉树part 02 226. 翻转二叉树、101对称二叉树、104二叉树的最大深度、111二叉树的最小深度

【代码】第六章 二叉树part 02 226. 翻转二叉树、101对称二叉树、104二叉树的最大深度、111二叉树的最小深度。

2024-12-20 15:20:05 277

原创 第六章 二叉树part01

【代码】第六章 二叉树part01。

2024-12-19 13:50:06 402

原创 第五章 栈与队列part2

【代码】第五章 栈与队列part2。

2024-12-18 16:07:32 819

原创 代码随想录 D7 | 454. 四数相加 383.赎金信 15.三数之和 18. 四数之和

【代码】代码随想录 D7 | 454. 四数相加 383.赎金信 15.三数之和 18. 四数之和。

2024-05-16 20:48:52 1087

原创 代码随想录Day 5 哈希表 242.有效的字母异味词 349.两个数组的交集 202.快乐数 1.两数之和

总的来说难度不大,但是由于我对于map和set类型不熟悉还是花了很多时间,需要认真复习这一块的知识。

2024-05-16 17:30:40 1006

原创 代码随想录 Day 4 | 链表02及总结

总的来说,链表的部分并不难,但是需要注意一下的方面是否需要对头节点进行单独讨论(可以用虚拟头节点规避这个问题)是否有可能对于空结点进行操作避免单项节点出现环结构,最好通过画图具体展现过程链表只能从前向后遍历,后一个结点无法获取前一个结点的信息,因此通常遍历时需要获取的是目标值的前一个结点,而不是目标值,需要做好判断与数组相同,注意双指针法和快慢指针法在其中的应用。

2024-05-10 23:37:05 511

原创 代码随想录 Day 3 | 链表 203. 移除元素 707.设计链表 206.反转链表

/ 数据信息int val;// 下一节点信息// 节点的构造函数(无参)// 节点的构造函数(有一个参数)// 节点的构造函数(有两个参数)

2024-05-10 04:46:40 749

原创 代码随想录 Day 1| 704. 二分查找、27. 移除元素

34 在排序数组中查找元素的第一个和最后一个位置问题描述:找出一个非递减序列目标值的开始位置和结束位置这里我用了先二分法找到target,然后分别向前和向后搜索目标值的方法,通过了测试,但是最糟糕的时候复杂度有n的平方,并不是很有效率。思路:分别计算左右边界,然后把他们合并起来。分为以下两种情况讨论:一般情况:右>=左若找不到该值:右<左代码// 寻找右边界这里注意java不能返回[a,b]这样的数组形式,必须new一个new int[] {a,b}

2024-05-09 00:16:27 1100 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除