fred-coder
fred-coder
全部文章
题解
归档
标签
去牛客网
登录
/
注册
fred-coder的博客
全部文章
/ 题解
(共148篇)
题解 | #跳台阶#
跳台阶问题 记忆化搜索 # # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param number int整型 # @return int整型 # class Solution: def __init__(self): s...
Python3
递归
2022-01-21
0
419
题解 | #目标和#
递归,路径选择 # # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param nums int整型一维数组 # @param target int整型 # @return int整型 # class Solution: def __init...
Python3
递归
2022-01-15
1
385
题解 | #最小生成树#
最小生成树算法 Kruskal,对所有边按照权重排序,利用并查集确定连通性,最终得出最小生成树的值 # # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # 返回最小的花费代价使得这n户人家连接起来 # @param n int整型 n户人家的村庄 # @param ...
Python3
图
并查集
2022-01-14
4
606
题解 | #单源最短路#
Dijkstra 算法; 先构建邻接表 构建权重数组 cost,记录节点 1 到每个节点的距离 优先级队列,以节点 1 到该节点的距离作为优先级 遍历优先级队列中的节点, (1) 如果得到的 距离 w 大于 cost[节点 n] 的值则跳过 (2) 否则从 n 的邻接表中取出相连的节点 ne, ...
Python3
堆(优先队列)
图
2022-01-13
0
380
题解 | #被围绕的区域#
dfs, 由于和边界值上的"O"相连的都不能被修改,先对边界值相邻的"O"进行状态调整,再修改符合条件的 "O" 的值 # # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param board char字符型二维数组 # @return char字符...
Python3
数组
深度优先搜索
递归
2022-01-11
0
503
题解 | #两两交换链表的节点#
利用反转链表的思路加上每 k 个 节点的限制,对整个链表进行递归处理, 得出最终的结果 # class ListNode: # def __init__(self, x): # self.val = x # self.next = None # # 代码中的类...
Python3
递归
链表
2022-01-08
0
452
题解 | #逆波兰表达式求值#
逆波兰表达式, 设置 stack 遍历表达式中的数据,当遇到加减乘除时, 弹出 stack 栈顶元素,进行计算操作, 注意 减法 和 除法时, 减数和除数是栈顶元素 # # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param tokens strin...
Python3
栈
2022-01-08
4
898
题解 | #盛水最多的容器#
双指针,能够盛水的面积为左右指针中较小的高度 * (r - l) 宽度,移动时,移动较小的指针;因为较小指针移动时,有可能使面积更大;由于面积的结果由 (r - l) * min(l, r) 决定, 不管移动 l 还是 r, r - l 都会变小, 若移动min(l, r) 中较大的,有可能得到更小...
Python3
双指针
数组
2022-01-07
0
459
题解 | #二叉树的直径#
由于求的是树的边的最长长度,则递归过程由左 -> 右 -> 根 顺序进行,并在递归过程中记录 左子树直径 和 右子树直径的和的最大值 # class TreeNode: # def __init__(self, x): # self.val = x # ...
Python3
二叉树
2022-01-06
1
449
题解 | #长度最小的连续子数组#
双指针,边界条件为 s < target 和 指针小于数组长度 # # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # # @param nums int整型一维数组 # @param target int整型 # @return int整型 # cla...
Python3
双指针
数组
2022-01-03
0
464
首页
上一页
3
4
5
6
7
8
9
10
11
12
下一页
末页