秋叶红霜CCCCCC
秋叶红霜CCCCCC
全部文章
分类
归档
标签
去牛客网
登录
/
注册
秋叶红霜CCCCCC的博客
全部文章
(共47篇)
题解 | #最长不含重复字符的子字符串#
动态规划: dp[i]表示以i结尾的不重复字符串长度. 这里隐藏了一个必要条件,就是起始点d。所以还需要维护起始点这个变量。 dp[i]的维护 和 起始点d的维护: s[i]在之前不出现,则+1。 s[i]在之前出现,则找出之前那个下标s[d:i].index(s[i]) + d。注意+d,否则不...
Python3
2022-11-01
1
310
题解 | #买卖股票的最好时机(一)#
一个普遍的解法。记录下标区间。 class Solution: def maxProfit(self , prices: List[int]) -> int: ...
Python3
2022-11-01
0
282
题解 | #字符串的排列#
class Solution: # 回溯法 def Permutation(self , str: str) -> List[str]:  ...
Python3
2022-10-30
0
286
题解 | #二维数组中的查找#
BST分了两个不同的方向,从而可以定位数据。所以这种“有单调性但不够单调”的查找,就要找到BST的那个出发点/角度,就可以定位数据了。本题就是右上角或者左下角。例如,从右上角出发,大的在下面,小的在左边。 class Solution: def Find(self , target: int...
Python3
2022-10-30
0
306
题解 | #数字序列中某一位的数字#
python3,时间复杂度(logn,以10为底)。 思路和步骤:关注整体的递增的数字,而不是拆开位后的 单数字0-9。考虑上数字长度,就可以和n比较了。 前期归纳总结:0位数个单数字,1位数个单数字,2位数个单数字,3位数个单数字,以此类推,这就是各个位数拥有的单数字个数。 用n...
Python3
2022-10-30
0
305
题解 | #数字在升序数组中出现的次数#
二分法,找右边界 class Solution: def GetNumberOfK(self , data: List[int], k: int) -> i...
Python3
2022-10-29
0
254
题解 | #滑动窗口的最大值#
单调队列的两种思路:强单调和弱单调 共同点是都关注队列首位是最大的。不同点在于(假设窗口大小为3): 弱单调只要首位最大,一个元素如果保持最大返回3次,那必然满了(队列长度到3了)。所以满了就是返回了3次的情况,这时候pop掉首位。但弱单调去掉首位,剩下的不一定弱单调,所以还需要维护剩下的成为弱单...
Python3
2022-10-29
0
309
题解 | #翻转单词序列#
直接split。 class Solution: def ReverseSentence(self , str: str) -> str: a = str.split() a = a[::-1] return ' '.j...
Python3
2022-10-28
0
303
递归法 | #栈的压入、弹出序列#
python3, 递归法。 初始情况: 都空,True。 长度不同;长度同,但元素对应不上。都返回False。(题目保证了pushV 的所有数字均不相同,这里用set(list)可以做判断) 长度<=2, 一定能对应压入和...
Python3
2022-10-28
0
368
题解 | #在二叉树中找到两个节点的最近公共祖先#
python3,递归。 所谓最近公共祖先,就是刚好分左右子树可以找到两个点。非最近(更高的)公共祖先,只能在某一边子树中找到两个点。 class Solution: # 所谓最近公共祖先,就是刚好分左右子树可以找到两个点。非...
Python3
2022-10-28
0
245
首页
上一页
1
2
3
4
5
下一页
末页