- 博客(9)
- 收藏
- 关注
原创 leetcode做题记录
力扣第一题:两数之和_嘿桌桌!的博客-CSDN博客力扣第二题 两数相加_嘿桌桌!的博客-CSDN博客力扣第三题 无重复字符的最长子串_嘿桌桌!的博客-CSDN博客力扣第六题 Z字形变换解法思路_嘿桌桌!的博客-CSDN博客力扣第36题 有效的数独_嘿桌桌!的博客-CSDN博客力扣第37题 解数独_嘿桌桌!的博客-CSDN博客T231 2 的幂_嘿桌桌!的博客-CSDN博客T942 增减字符串匹配_嘿桌桌!的博客-CSDN博客...
2022-05-17 11:24:17 118 1
原创 T231 2 的幂
题目描述如下:简单题欸,咱只需要循环判断一下就可以了欸代码如下:class Solution: def isPowerOfTwo(self, n: int) -> bool: if n <= 0: return False for i in range(0, 32): if n == 2**i: return True return False...
2022-05-11 20:43:16 148
原创 T942 增减字符串匹配
题目描述如下:解题思路:选取一个中间数,如果是I就选一个大于该中间数并比当前所有数大1的数字,小于就选一个比该中间数小且比当前出现过的最小数小1的数。可以发现,字母D的数量就是我们要找的中间数,因为D的数量,是前一个数字比后一个数字大的数量,也就是该处的数字应该比我们的中间数要小的可能的数字的数量。按照实例3,我们D的数量是2,所以从2开始,遇到第一个D,选取1,遇到第二个D,选取0,遇到I,选取3,最终为[2,1,0,3],对于每一个这样的字母序列,我们就找出了一个排序序列代码如下:
2022-05-11 20:39:39 199
原创 力扣第36题 有效的数独
题目描述如下:也就是看当前填入的数字是否全都满足题中所给的规则由于我是先做了T37,所以T36直接套用了T37 的做法,用了状态压缩,将棋盘的信息放在9+9+9个集合当中,前9个集合表示一行的数字集合,中间9个是一列的,最后9个是九宫格内的数字集合。遍历其中所有不为“.”的点,看是否之前点的集合中出现过,如果出现过就出错返回False,反之Trueclass Solution: def isValidSudoku(self, board: List[List[str]]...
2022-04-26 15:13:48 651
原创 力扣第37题 解数独
T37 解数独题目描述如下:做题思路:先想着有没有可以利用的规则,但是想到数独的确定的规则就如题中所给三个,确实没有简单规则来做捷径,因此确定了需要遍历所有解空间,但是在遍历的过程中会出现很多不符合要求的情况,并且从不符合要求的情况开始就不需要继续往下做了,因为当前这个错了,之后的也不可能对,也就是说可以剪枝,减去很多不必要的运算。因此,每次往board中第一个“.”放1-9试试看,如果能放1,那么在第二个“.”处再放放1试试看,对于所有的“.”地方,都会放1-9试一次(没必要的解就剪枝不会
2022-04-26 15:12:26 327
原创 力扣第六题 Z字形变换解法思路
T6 Z字形变换思路如下:由于是Z子形移动,下一次输出都只与当前位置也就是图中箭头所指方向以及移动方向相关,移动方向例如2就是向下移动,到达下一个输出的路径为2->3->4->5->6,移动的距离是4,可以发现其中的关系,下一个输出字母=当前位置+当前方向上需要运动的距离而向下时距离是(numRows - 1 - i) * 2(i为当前位置,例如箭头所指位置为1)而向上时距离是i * 2(i为当前位置,例如箭头所指位置为1)由此可以写出代码cla
2022-04-22 20:13:03 309
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人