沐林耀锦城
沐林耀锦城
全部文章
分类
归档
标签
去牛客网
登录
/
注册
沐林耀锦城的博客
TA的专栏
0篇文章
0人订阅
好易学数据结构
0篇文章
0人学习
全部文章
(共22篇)
题解 | #判断是不是二叉搜索树#
秒懂【二叉搜索树验证】!递归一步步拆解。 1.思路 先来看二叉搜索树的性质: 二叉搜索树(Binary Search Tree,简称BST)是一种特殊的二叉树,其每个节点的值都大于其左子树中所有节点的值并且小于其右子树中所有节点的值。二叉搜索树允许快速查询、插入和删除操作,多数操作(插入、删除和...
2025-07-31
1
12
题解 | #二叉树的中序遍历#
秒懂【二叉树中序遍历】!递归一步步拆解。 1.思路 需要先明确二叉树【中序】遍历的规则: 二叉树的遍历一般使用【递归】的方法。如果要采用递归方法需满足递归的2个条件: 可以看出,对于左子树、右子树的遍历操作与整个二叉树一样,只是数据规模不同。 对于整颗二叉树来说,叶子节点左右子树都是Null...
2025-07-31
2
16
题解 | #删除有序链表中重复的元素-II#
秒懂【删除链表元素】!超清晰图解一步步拆解。 1.思路 本题要求删除重复的元素即在链表中重复的元素都会被删除,由于重复的元素也有可能是头结点,因此需要定义一个链表的虚拟头结点,虚拟头结点的指针域指向链表的头结点。 假如链表结构如下图所示: 这时可以通过以下步骤完成链表重复元素的删除。 步骤一:定...
2025-07-26
0
13
题解 | #删除有序链表中重复的元素-I#
秒懂【删除链表元素】!超清晰图解一步步拆解。 1.思路 本题是:删除有序链表中重复的元素,即重复的元素需要保留一个,同时限定了链表是有序的(这样只需要比较相邻的元素值)。 这时可以通过一个操作指针变量cur就可以完成题目的要求。 假如有序链表如下图所示: 步骤一:定义操作节点指针变量。 步骤二...
2025-07-26
1
12
题解 | #编辑距离(一)#
秒懂【编辑距离】!动态规划一步步拆解。 1.思路 当str1[i-1]==str[j-1] 时,不用编辑,因此dp[i-1][j-1]。 当str1[i-1] != str[j-1] 时,需要编辑(删除、增加、或者修改选其中一个最小的值),因此dp[i][j] = min(dp[i-1][j], ...
2025-07-23
2
18
题解 | #跳台阶#
1.思路 秒懂【爬楼梯】!动态规划一步步拆解。 本题的关键是套用动态规划的模板,对问题进行拆解。 具体思路是: 如果文字描述的不太清楚,你可以参考视频的详细讲解:B站@好易学数据结构 2.代码 2.1 Python代码 # # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的...
2025-07-23
2
16
题解 | #矩阵的最小路径和#
秒懂【最小路径和】!动态规划一步步拆解。 1.思路 从左上角到右下角,移动的方向是向左或者向下。在移动的过程中需要获取元素的值,因此需要将当前元素的值累计上。对于当前的状态,从上侧、左侧选择最小的。 dp[i][j] = min(dp[i - 1][j], dp[i][j - 1]) + mat...
2025-07-23
1
17
题解 | #不同路径的数目(一)#
秒懂【不同路径】!动态规划一步步拆解。 1.思路 本题给定了一个矩阵,从左上角到右下角移动,移动的方向为:向右或者向下。因此:dp[i][j] = dp[i - 1][j] + dp[i][j - 1] (从上面下来 或者从左边过来)。 如果文字描述的不太清楚,你可以参考视频的详细讲解:B站@...
2025-07-22
1
23
题解 | #有重复项数字的全排列#
秒懂【全排列】!回溯算法一步步拆解。 1.思路 通过回溯法实现数字项的全排列,要特别留意重复数字的处理。具体思路如下: 参考回溯算法模板,进行以下操作: 遍历每一个元素,以该元素作为开头的数字数列。首先选取该数字,并标记该数字已经使用过;再递归选择其他数字;撤销该数字,让其他数字作为开头。缩小...
2025-07-22
2
18
题解 | #没有重复项数字的全排列#
秒懂【全排列】!回溯算法一步步拆解。 1.思路 下面需要重点来看一下什么是回溯算法: 回溯算法是一种通过试错法(试探+回退)解决约束满足问题的通用策略,常用于解决组合优化、排列、子集生成等问题。其核心思想是逐步构建解,若发现当前路径无法达成目标,则回退到上一步尝试其他可能性。 核心思想 试探...
2025-07-22
2
19
首页
上一页
1
2
3
下一页
末页