- 博客(8)
- 收藏
- 关注
原创 力扣30.串联所有单词的子串(python)
给定一个字符串s和一个字符串数组wordswords中所有字符串。s中的是指一个包含words中所有字符串以任意顺序排列连接起来的子串。"abcdef""abefcd""cdabef""cdefab""efabcd""efcdab""acdbef"words返回所有串联子串在s中的开始索引。你可以以返回答案。[0,9]因为 words.length == 2 同时 words[i].length == 3,连接的子字符串的长度必须为 6。子串 "barfoo" 开始位置是 0。
2025-06-02 19:09:27
1179
原创 力扣2901.最长相邻不相等子序列
1.我创建两个数组,d用来储存第i个的最长长度,f来储存上一个链接上的序号,但是如果第x个和第x+1个不能连接,对于第x+1个来说,它的d[x+1]等于d[x],它的f[x+1]呢?逻辑上都不相通(与我创建的f本质不相同),且此时会产生分组(有多条路可走,需要进行判断),如[a,b,c,aj,ac,ad,am]最长肯定是后面四个。所以答案为 [words[0],words[1],words[2],words[3]] = ["a","b","c","d"]。我们选择子序列 [0,1,2,3]。
2025-05-20 20:57:25
1075
原创 力扣22.括号生成(python)
已知每种情况最左边一定是'(',那么一定是这种情况'(X)Y',打印的是添加的括号,只需考虑X和Y里面括号的数量定义p,q来考虑X,Y里的括号数量,p+q=n-1,只需进行X,Y的排列组合即可(因为我们已知。这道题最好思路是动态规划,在考虑输入n时,只需考虑输入n-1时的所有情况即可,思路如下。代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且。
2025-05-14 18:33:40
422
原创 背包问题(python)
大于则是需判断,d[i-1][j-w]+v的值(意思是拿去该物品,以及该容量,看该条件下的值),与不放入该物品得到的最大值d[i-1][j],谁大谁更优。判断某个物品是否放入时,首先判断此时容量j是否大于该物品所占空间。动态规划,该问题的最优解取决于上一个的最优解。如果不懂的画可简单遍历一下该过程。小于则是d[i-1][j]的值。
2025-05-11 21:37:47
414
原创 力扣20.有效的括号(python)
创建两个栈,一个用于存放字符串s的每个字符,另一个用于合并消除,将s的栈顶元素取出,放入空栈中,继续拿下一个元素,判断这两个元素是否满足条件,满足则取出这两个元素,重复上述步骤直至s里的元素被拿完,最后通过判断合并消除的栈是否为空,为空则返回true,反之返回false。,判断字符串是否有效。
2025-05-08 14:53:48
310
原创 力扣18.四数之和(python)
首先对数组nums进行排序,定义四个指针,i----j----ii----jj,i来滑动,用i来遍历第一个数,遍历整个数组,剩下三个指针和三数之和类似,j对应第二个,ii对应第三个,jj从倒数第一个遍历到前面,如果四个数之和大于target,则jj减小,反之ii增大,直到ii>=jj,进行下一次的j加一,一直遍历整个数组。2. i,j,ii,jj在进行下一次遍历时,应该让下一次的nums的值与上一次的不同,否则重复遍历。这道题和前面三数之和类似,通过指针的滑动来找到等于target的四个数。
2025-05-06 23:10:23
641
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅