松鼠霖
松鼠霖
全部文章
题解
归档
标签
去牛客网
登录
/
注册
松鼠霖的博客
全部文章
/ 题解
(共12篇)
题解 | #完全二叉树结点数#
第一反应是没读懂题,因为会想到不是从上到下,从左到右遍历所有节点,save在list里,再用len()计算长度即可如下(但是时间复杂度貌似不符合): # class TreeNode: # def __init__(self, x): # self.val = x # ...
二叉树
数学逻辑
2021-09-26
0
412
题解 | #顺时针打印矩阵#
首先要有数学逻辑,这种提 每次只取第一行数据,然后再把矩阵逆时针旋转90度 1.不过要注意用extend和append的区别, append是只能一个值一个值,extend可以一次entend进去一个list 2.矩阵转置有三种方法, 可以用...
数学逻辑
矩阵转置
类型转换
ndarray
list
tolist()
np.array()
2021-09-20
0
330
题解 | #剪绳子#
贼牛逼的一道题,用数学思维, 一个整数先把他分成两部分,x+y=n(假设x>=y并且x-y<=1,也就是说x和y非常接近)那么乘积是x*y。然后我们再把这两部分的差放大(x+1)+(y-1)=n(假设x>=y);他们的乘积是(x+1)*(y-1)=x*y-(x-y)-1...
数学逻辑
2021-09-10
0
397
题解 | #矩阵中的路径#
DFS最优遍历,首先很简单能想到 上下左右 分别对应 (x,y) 的加减, 所以代码的大致轮廓我们应该能写出来,就是遍历矩形所有的点,然后从这个点开始往他的4个方向走,因为是二维数组,所以有两个for循环,代码如下 hasPath, 关键代码是DFS这个函数,用到了递...
数学逻辑
递归
[1:]和[1]
递归终止条件
2021-09-09
0
454
题解 | #二叉树的下一个结点#
仔细观察,可以把中序(DBHEIAFCG)下一结点归为几种类型: 1、有右子树,下一结点是右子树中的最左结点,例如 B,下一结点是 H 2、无右子树,且结点是该结点父结点的左子树,则下一结点是该结点的父结点,例如 H,下一结点是 E 3、无右子树,且结点是该结点父结点的右子树,则一直沿着父结点追朔,...
ListNode
遍历
数学逻辑
链表
二叉树
2021-09-08
0
385
题解 | #求1+2+3+...+n#
本来想到用数列的知识更简单, 但是不能用乘法,于是就用一个循环来做了 # -*- coding:utf-8 -*- class Solution: def Sum_Solution(self, n): ...
数列
乘法
数学逻辑
2021-09-08
0
287
题解 | #和为S的连续正数序列#
拿到手可能一下感觉看起来很简单但是不知道怎么做,但是细想一下,就发现不难,遍历就完事儿了, sum1表示当前累加值,res1表示当前累加值满足 sum1 == tsum情况下的序列,res用来保存所有满足情况的序列 1.首先至少要是两个数相加得到 tsum,那么遍历时候只需要遍历 到 (tsu...
遍历
数学归纳法
数学逻辑
2021-09-07
0
342
题解 | #矩形覆盖#
其实找规律可以找出就是斐波那契数列,f[n] = f[n-1] + f[n-2],初始条件f[0] = 0, f[1] = 1, f[2] =2 # -*- coding:utf-8 -*- class Solution: def rectCover...
斐波那契数列,
递归
数学逻辑
2021-09-03
0
473
题解 | #扑克牌顺子#
第一反应可能是用 list收集到所有数据后,sort,看能不能成顺子,但是实现起来太麻烦 其实仔细思考一下,不难发现规律 根据题意,此 55 张牌是顺子的 充分条件 如下: 除大小王外,所有牌 无重复 ; &nb...
数学逻辑
遍历
2021-08-31
0
386
题解 | #跳台阶扩展问题#
类似基础跳台阶问题 设f[i] 表示 当前跳道第 i 个台阶的方法数。那么f[n]就是所求答案。 假设现在已经跳到了第 n 个台阶,那么前一步可以从哪些台阶到达呢? 如果上一步跳 1 步到达第 n 个台阶,说明上一步在第 n-1 个台阶。已知跳到第n-1个台阶的方法数为f[n-1]...
递归
斐波那契数列,
数学逻辑
2021-08-22
0
370
首页
上一页
1
2
下一页
末页