牛客159707358号
牛客159707358号
全部文章
分类
归档
标签
去牛客网
登录
/
注册
牛客159707358号的博客
TA的专栏
40篇文章
0人订阅
剑指offer回顾
40篇文章
116人学习
全部文章
(共99篇)
题解 | 斐波那契数列 JZ10 Fibonacci
来自专栏
动态规划 class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param n int整型 * @return int整型 */ ...
2025-03-26
0
82
题解 | 跳台阶 JZ69 斐波拉契变式
来自专栏
动态规划由题可得 第n个台阶的跳法=(n-1)个台阶的跳法+(n-2)台阶跳法a,b,c分别保存前两个变量可以用递归以及递归变式 class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * ...
2025-03-26
0
66
题解 | 字符串的排列 递归法实现排列组合
来自专栏
递归法使用flag标记数组表示位置是否被占据排序,判断前一个位置为0且字母相同->相同位置已有该字母出现在上一层递归函数结束后,解除占用 class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 ...
2025-03-25
0
53
题解 | 数字序列中某一位的数字 JZ 44 差两种解法
来自专栏
定位数字位数,转化成字符串注意用long型, 过程结果可能超出int范围。最后转化成字符串处理。分辨第n位 前面有n个数字可以被占用,从零开始计算思路很简单,实现很麻烦 #include <string> class Solution { public: /** * 代...
2025-03-25
0
110
题解 | 旋转数组的最小数字 JZ11
来自专栏
二分法利用单调性,来判断最小值所在的区间。当nums[mid]==nums[right]是无法判断的,[0,1,1,1,1]在左边,[2,3,4,1,1,1,1]自己本身,[2,2,2,1,2]在右边。通过right-1来缩写范围,原理,每次都不会排除最小值。旋转个数为0时,此时时间复杂度是O(n)...
2025-03-25
0
77
题解 | 数字在升序数组中出现的次数 JZ53
来自专栏
二分法实现O(nlogn)注意条件升序,二分条件 class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param nums int整型vector ...
2025-03-25
0
88
题解 | 在二叉树中找到两个节点的最近公共祖先 JZ 86
来自专栏
双栈保存路径法 class Solution { public: /** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * * @param root TreeNode类 * @param p int整型 ...
2025-03-24
0
40
题解 | 二叉树中和为某一值的路径(三) JZ 84
来自专栏
嵌套递归法双层递归:check递归函数检测从root点出发是否存在符合的路径FindPath递归,遍历树的节点作为起点注意check函数结束递归的条件是空节点,不是sum==0,如果下一个节点值为0,那么可以存在两条路径,而函数提前结束。会存在重复计算 /** * struct TreeNode ...
2025-03-24
0
82
题解 | 把二叉树打印成多行 JZ 78
来自专栏
队列法相比于传统的bfs,每次循环弹出一个,这里要每个循环弹出n个。n表述弹出直到q为空,n等于每层循环的队列长度,或者手动统计n。对应循环,每层弹出一个和嵌套while弹出多个是两种不同的视角。 /** * struct TreeNode { * int val; * struct Tr...
2025-03-24
0
56
题解 | 二叉树的下一个结点 分类讨论
来自专栏
分类讨论分类讨论解决问题pNode为左节点 pNode->next|pNode->rightpNode为右节点 pNode->right | 祖先节点 | 空pNode 为祖先节点 pNode->right | nullptr漏了两种情况,导致报错 /* struct Tre...
2025-03-24
0
53
首页
上一页
1
2
3
4
5
6
7
8
9
10
下一页
末页