HovingHuang
HovingHuang
全部文章
分类
top101题解(2)
题解(42)
归档
标签
去牛客网
登录
/
注册
百草猿
种一棵树最好的时间是10年前,其次是现在。
全部文章
(共32篇)
题解 | #分糖果问题#
/** * 解法:贪心 * 思路: * 要想分出最少的糖果,利用贪心思想,肯定是相邻位置没有增加的情况下大家都分到1, * 相邻位置有增加的情况下,分到糖果数加1就好。什么情况下会增加糖果,相邻位置有得 * 分差异,可能是递增可能是递减,如果是递增的话,糖果依次加1,如果是递...
Typescript
HTML/CSS/JavaScript
Javascript Node
Javascript V8
2022-05-08
2
556
题解 | #螺旋矩阵#
/** * 解法一:边界模拟法 * 思路: * 我们想象有一一个矩阵,从第一- 个元素开始,往右到底后再往 * 下到底后再往左到底后再往上,结束这一-圈,进入下一圈螺旋。 * 时间复杂度: O(mn),相当于遍历整个矩阵. * 空间复杂度: 0(1),res属于必要空间,没有使用额外辅助...
Typescript
HTML/CSS/JavaScript
Javascript Node
Javascript V8
2022-05-04
3
442
题解 | #反转链表#
/** * 解法一:迭代(双指针) * 思路: * 我们可以设置两个指针,一个当前节点的指针,一个上一个节点的指针(初始为空)。 * 遍历整个链表,每到一个节点,断开当前节点与后面节点的指针,并用临时变量记录后一个节点,然后当前节点指向上一个节点。 * 再轮换当前指针与上-一个指针...
Typescript
HTML/CSS/JavaScript
Javascript Node
Javascript V8
2022-04-24
1
473
题解 | #连续子数组的最大和#
/** * 解法二:动态规划 * 思路: * 可以用dp数组表示以下标i为终点的最大连续子数组和。 * 每次遇到一个新的数组元素,连续的子数组要么加,上变得更大,要么它本 * 身就更大,因此状态转移为dp[i] = max(dp[i - 1] + array[i], array...
Typescript
HTML/CSS/JavaScript
Javascript Node
Javascript V8
2022-04-24
0
439
题解 | #没有重复项数字的全排列#
/** * 解法一:回溯 + 递归 * 思路: * 全排列就是对数组元素交换位置,使每--种排列都可能出现。因为题目要求按照字典序排 * 列输出,那毫无疑问第-一个排列就是数组的升序排列,它的字典序最小,后续每个元素与 * 它后面的元素交换一次位置就是一种排列情况,但是如果要保...
Typescript
HTML/CSS/JavaScript
Javascript Node
Javascript V8
2022-04-24
0
637
题解 | #二叉树中和为某一值的路径(一)#
/** * 解法一:递归(先序遍历) * 思路: * 既然是检查从根到叶子有没有一-条等于目标值的路径,那肯定需要从根节点遍历到叶子, * 我们可以在根节点每次往下一层的时候,将sum减去节点值,最后检查是否完整等于0.而 * 遍历的方法我们可以选取二叉树常用的递归先序遍历,因...
Typescript
HTML/CSS/JavaScript
Javascript Node
Javascript V8
2022-04-24
0
446
题解 | #求二叉树的层序遍历#
/** * 解法一:非递归(BFS) * 思路: * (1)首先判断二叉树是否为空,空树没有遍历结果。 * (2)建立辅助队列,根节点首先进入队列。不管层次怎么访问,根节点一定是.第一个,那它肯定排在队伍的最前面。 * (3)每次进入一层,统计队列中元素的个数。因为每当访问完一一层,下一-...
Typescript
HTML/CSS/JavaScript
Javascript Node
Javascript V8
2022-04-24
0
442
题解 | #寻找第K大#
/** * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 * * @param a int整型一维数组 * @param n int整型 * @param K int整型 * @return int整型 */ /** * 解法一:快速排序 * ...
Typescript
HTML/CSS/JavaScript
Javascript Node
Javascript V8
2022-04-24
0
504
题解 | #三数之和#
/** * 解法一:双指针 * 思路:待补充 * 时间复杂度:O(n^2) * 空间复杂度:待补充 */ export function threeSum(num: number[]): number[][] { const res: number[][] = [] con...
Typescript
HTML/CSS/JavaScript
Javascript Node
Javascript V8
2022-04-24
0
491
题解 | #买卖股票的最好时机(一)#
/** * 解法一:暴力法(嵌套循环) * 思路: * (1)我们需要找出给定数组中两个数字之间的最大差值(即,最大利润)。 * (2)此外,第二个数字(卖出价格)必须大于第一个数字(买入价格)。 * 时间复杂度:O(n^2)。 * 空间复杂度:0(1),只使用了一个常数变量。 */ ...
Typescript
HTML/CSS/JavaScript
Javascript Node
Javascript V8
2022-04-24
3
424
首页
上一页
1
2
3
4
下一页
末页