E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
LQB算法训练
Day09代码随想录
算法训练
营第一天 |28. 找出字符串中第一个匹配项的下标, 459.重复的子字符串
28.找出字符串中第一个匹配项的下标题目链接:28.找出字符串中第一个匹配项的下标思路:本题就是KMP的裸题,利用KMP进行匹配,(我习惯next数组从1开始),如果初学者一定要将暴力求解的思路KMP的匹配思路next数组的更新思路都自己画图模拟思考,推导一遍,以便加深理解。我自己用文字很难表述,所以直接为大家献上视频。4.帮你把KMP算法学个通透!(理论篇)5.帮你把KMP算法学个通透!(求ne
不爱玩的提拉米苏
·
2024-01-26 00:09
数据结构与算法学习日记
算法
leetcode
数据结构
代码随想录
算法训练
营第九天|kmp算法 28. 找出字符串中第一个匹配项的下标
作用解决字符串匹配的问题原理在目标串与文本串不匹配时,利用之前匹配过的信息继续匹配,而不是继续从头匹配前缀与后缀前缀:包含第一个字符的连续子字符串;后缀:包含最后一个字符的连续子字符串,如字符串aabaaf,前缀有a,aa,aab,aaba,aabaa,后缀有f,af,aaf,baaf,abaaf。前缀表next数组next[i]记录了从0~i之前的字符串的公共前后缀最大长度,当当前字符串的前后缀
qq_41379420
·
2024-01-26 00:36
算法
java
算法
leetcode
代码随想录
算法训练
营第九天| 28.找出字符串中第一个匹配项的下标 459.重复的子字符串
28.找出字符串中第一个匹配项的下标题目链接:https://leetcode.cn/problems/find-the-index-of-the-first-occurrence-in-a-string/思路:暴力了classSolution:defstrStr(self,haystack:str,needle:str)->int:x=len(haystack)y=len(needle)ifx=
lldyy_xb
·
2024-01-26 00:05
leetcode
算法
职场和发展
代码随想录
算法训练
营Day9 | 28. 找出字符串中第一个匹配项的下标、459. 重复的子字符串
KMP算法kmp算法解决字符串匹配问题思想核心:利用匹配失败后的信息,尽量减少模式串与主串的匹配次数前缀与后缀前缀:包含首字母、不包含尾字母的所有子串如aabaaf的前缀有:a、aa、aab、aaba、aabaa(aabaaf不是前缀)后缀:包含尾字母,不包含首字母的所有字串如aabaaf的后缀有:f、af、aaf、baaf、abaaf(aabaaf不是后缀)最长相等前后缀——前缀表从首字符开始,
Y_Vollerei
·
2024-01-26 00:35
数据结构
【代码随想录
算法训练
营】D9 28. 找出字符串中第一个匹配项的下标 459. 重复的子字符串
今日题目:28.找出字符串中第一个匹配项的下标459.重复的子字符串解题思想:KMP算法最长相等前后缀:对模式串的每个子串求最长相等前后缀长度,构造前缀表。(以模式串aabaaf为例)得到了模式串的前缀表后,再通过此表进行匹配。逐一比较,当遇到不匹配的冲突位置,需要寻找前面子串的最长相等前后缀子串长度a0aa1aab0aaba1aabaa2aabaaf0掌握Java基本语法代码:28.找出字符串中
浅夏、
·
2024-01-26 00:04
力扣刷题自记录
算法
代码随想录
算法训练
营29期Day30|LeetCode 332,51,37
文档讲解:回溯算法总结篇重新安排行程N皇后解数独51.N皇后题目链接:https://leetcode.cn/problems/permutations/description/思路:本题的基本含义就是有个N*N的棋盘,需要我们放N个皇后在上面,满足不能有任意两个皇后位于同一行或者同一列或者同一对角线。这题我们可以按行搜索,每行放一个,这样保证了行不重复,递归边界条件为放到第N+1行,这证明前N行
tlingyuqi
·
2024-01-25 22:29
代码随想录算法训练营29期
算法
leetcode
c++
职场和发展
代码随想录
算法训练
营29期Day29|LeetCode 491,46,47
文档讲解:递增子序列全排列全排列II491.递增子序列题目链接:https://leetcode.cn/problems/non-decreasing-subsequences/description/思路:首先我们开一个vector作为子序列数组。在搜索的每一层中,我们枚举nums数组中的每一个数字,判断是否大于等于vector中的最后一个数,如果是,则加入,然后进入下层搜索,如果不是,则接着枚
tlingyuqi
·
2024-01-25 22:28
代码随想录算法训练营29期
算法
leetcode
深度优先
c++
职场和发展
算法训练
营day49_动态规划
算法训练
营day49_动态规划121.买卖股票的最佳时机贪心左边大的没用;枚举每一天,更新ans,若小于买入,更新买入;classSolution{public:intmaxProfit(vector&
摘樱桃几百遍
·
2024-01-25 22:55
代码随想录打卡
算法
动态规划
leetcode
算法训练
营Day52(动态规划13)
300.最长递增子序列力扣(LeetCode)官网-全球极客挚爱的技术成长平台提醒今天开始正式子序列系列,本题是比较简单的,感受感受一下子序列题目的思路。classSolution:deflengthOfLIS(self,nums:List[int])->int:iflen(nums)nums[j]:dp[i]=max(dp[i],dp[j]+1)result=max(result,dp[i])#
Best,
·
2024-01-25 22:25
动态规划
算法
算法训练
营Day53(动态规划14)
1143.最长公共子序列力扣(LeetCode)官网-全球极客挚爱的技术成长平台提醒体会一下本题和718.最长重复子数组的区别classSolution:deflongestCommonSubsequence(self,text1:str,text2:str)->int:#创建一个二维数组dp,用于存储最长公共子序列的长度dp=[[0]*(len(text2)+1)for_inrange(len(
Best,
·
2024-01-25 22:25
动态规划
算法
算法训练
营Day51(动态规划12)
309.最佳买卖股票时机含冷冻期力扣(LeetCode)官网-全球极客挚爱的技术成长平台提醒本题加了一个冷冻期,状态就多了,有点难度,要把各个状态分清,思路才能清晰注意初始化dp[0][0]、dp[0][1]、dp[0][2],dp[0][3,]如果这状态是非法状态,那就主要看递推公式需要把它初始化为多少classSolution:defmaxProfit(self,prices:List[int
Best,
·
2024-01-25 22:24
动态规划
算法
算法训练
营Day48(动态规划9)
说明今天就是打家劫舍的一天,这个系列不算难,可以一口气拿下。198.打家劫舍力扣(LeetCode)官网-全球极客挚爱的技术成长平台classSolution:defrob(self,nums:List[int])->int:iflen(nums)==0:#如果没有房屋,返回0return0iflen(nums)==1:#如果只有一个房屋,返回其金额returnnums[0]#创建一个动态规划数组
Best,
·
2024-01-25 22:54
动态规划
算法
算法训练
营Day50(动态规划11)
说明较难,二刷再仔细打代码123.买卖股票的最佳时机III力扣(LeetCode)官网-全球极客挚爱的技术成长平台提醒这道题一下子就难度上来了,关键在于至多买卖两次,这意味着可以买卖一次,可以买卖两次,也可以不买卖classSolution:defmaxProfit(self,prices:List[int])->int:iflen(prices)==0:return0dp=[[0]*5for_i
Best,
·
2024-01-25 22:24
动态规划
算法
代码随想录
算法训练
营Day14(2)|递归遍历,迭代遍历
递归三要素:1.确定递归函数的参数和返回值:确定哪些参数是递归的过程中需要处理的,那么就在递归函数里加上这个参数,并且还要明确每次递归的返回值是什么进而确定递归函数的返回类型。2.确定终止条件:写完了递归算法,运行时经常会遇到栈溢出的错误,就是没写终止条件或者终止条件写的不对,操作系统也是用一个栈的结构来保存每一层递归的信息,如果递归没有终止,操作系统的内存栈必然就会溢出。3.确定单层递归的逻辑:
WEnyue4261
·
2024-01-25 21:31
算法
数据结构
代码随想录
算法训练
营Day6|242有效字母异位、349求两个数组的交集、
1.3leetcode242有效字母异位这题在开营前琢磨过,复习了一下,leetcode上记了笔记,就直接抄过来了第一次解答忘记了在判断长度是否相等后,长度不相等可以直接返回false,不需要往下判断了。没通过的原因,有部分是因为不熟悉C++的使用,一些功能不知道怎么调用。最简单的办法是暴力破解,用双重循环遍历,同时记录下相同字母的字母数量,时间复杂度是O(n^2).看了其他人的题解得到的收获:收
WEnyue4261
·
2024-01-25 21:01
算法
代码随想录
算法训练
营Day7|四数之和、赎金信、三数之和、四数之和
[收获1]C++中循环的一种写法是for(inta:A){},其中的int可以是auto自动匹配类型。a是与A数组中的元素相同的变量,最先等于A数组的第一个元素,以此进入循环体。或者理解为从数组A中依次取出元素,赋值给a。四数之和原题链接:leetcode454四数之和[哈希法求解思路]先看前两个数组nums1和nums2,将不重复的nums1中元素与nums2中元素之和,放进事先定义好的map中
WEnyue4261
·
2024-01-25 21:01
数据结构
代码随想录
算法训练
营Day9|实现strStr、重复的子字符串
[KMP算法]KMP算法是一种改进的字符串模式匹配算法。模式串与主字符串进行匹配时,失配发生后,不再单纯地将模式后移一位,而是根据当前字符串的特征数来决定模式移动的位数。避免从头匹配。[next数组||前缀表]next数组就是一个前缀表,很多KMP算法实现都是把前缀表统一减一(右移一位,初始位置为-1)之后作为next数组。做字符串匹配时,如果使用暴力匹配,发现不匹配,此时就要从头匹配,但如果使用
WEnyue4261
·
2024-01-25 21:01
数据结构
代码随想录
算法训练
营day2| leetcode977有序数组的平方、209长度最小的子数组、59螺旋矩阵
1.原题:leetcode977有序数组的平方【暴力解法】直接循环遍历所有的数组元素,将它们挨个平方,然后再进行升序排列。源代码如下:【收获1】对数组进行排序时可以使用sort函数sort(Array.begin(),Array.end());【收获2】数组中的push_back()函数的使用方法vectorans;//定义一个新的容器ans用来储存平方后的数字for(inti=0;isorted
WEnyue4261
·
2024-01-25 21:00
代码随想录算法训练营
算法基础
数据结构
代码随想录
算法训练
营day1|leetcode704二分查找、27移除元素
原题链接:leetcode704二分查找第一次运行显示出现了函数的返回绘制路径有错误,我只能表示无奈,因为C++基本语法问题真的好多不清楚,没辙,只能一点点补。【初次题解思路】根据以前学过的二分法,从1/2数组元素处开始出发,判断是否与目标值相等,相等返回下标,不相等进入第二重判断,如果大于目标值,则当前的下标在目标值右侧,向左移动1/2的下标路程,如果小于则向右移动至i+i/2下标处。限制条件为
WEnyue4261
·
2024-01-25 21:30
代码随想录算法训练营
算法基础
数据结构
算法
leetcode
c++
代码随想录
算法训练
营第十四天|104.二叉树的最大深度,559.n叉树的最大深度,111.二叉树的最小深度,222.完全二叉树的节点个数
系列文章目录代码随想录
算法训练
营第一天|数组理论基础,704.二分查找,27.移除元素代码随想录
算法训练
营第二天|977.有序数组的平方,209.长度最小的子数组,59.螺旋矩阵II代码随想录
算法训练
营第三天
丁希希哇
·
2024-01-25 13:51
力扣算法刷题
算法
面试
python
力扣
算法训练
营Day57(回文子串--总结DP)
647.回文子串647.回文子串-力扣(LeetCode)classSolution{publicintcountSubstrings(Strings){intlen=s.length();//i到j这个子串是否是回文的boolean[][]dp=newboolean[len][len];intres=0;for(inti=len-1;i>=0;i--){for(intj=i;j=0;i--){/
不吃青椒!
·
2024-01-24 20:55
算法
算法训练
营Day53(子序列问题)
1143.最长公共子序列1143.最长公共子序列-力扣(LeetCode)着重理解else里面的逻辑classSolution{publicintlongestCommonSubsequence(Stringtext1,Stringtext2){intlen1=text1.length();intlen2=text2.length();//到i-1j-1的最长公共子序列int[][]dp=newi
不吃青椒!
·
2024-01-24 20:25
算法
算法
算法训练
营Day56(编辑距离)
583.两个字符串的删除操作本题和动态规划:115.不同的子序列相比,其实就是两个字符串都可以删除了,情况虽说复杂一些,但整体思路是不变的。583.两个字符串的删除操作-力扣(LeetCode)classSolution{publicintminDistance(Stringword1,Stringword2){intlen1=word1.length();intlen2=word2.length
不吃青椒!
·
2024-01-24 20:25
算法
算法训练
营 day59 动态规划 两个字符串的删除操作 编辑距离
算法训练
营day59动态规划两个字符串的删除操作编辑距离两个字符串的删除操作583.两个字符串的删除操作-力扣(LeetCode)给定两个单词word1和word2,返回使得word1和word2相同所需的最小步数
还是选择了面包
·
2024-01-24 20:53
训练营
算法
动态规划
代码随想录
算法训练
营day13|239.滑动窗口最大值、347.前K个高频元素
239.滑动窗口最大值347.前K个高频元素239.滑动窗口最大值(一刷至少需要理解思路)之前讲的都是栈的应用,这次该是队列的应用了。本题算比较有难度的,需要自己去构造单调队列,建议先看视频来理解。题目链接/文章讲解/视频讲解:代码随想录347.前K个高频元素(一刷至少需要理解思路)大/小顶堆的应用,在C++中就是优先级队列本题是大数据中取前k值的经典思路,了解想法之后,不算难。题目链接/文章讲解
万事大吉CC
·
2024-01-24 20:17
代码随想录
算法
代码随想录
算法训练
营day11|20.有效的括号、1047.删除字符串中的所有相邻重复项、150.逆波兰表达式求值
20.有效的括号1047.删除字符串中的所有相邻重复项150.逆波兰表达式求值20.有效的括号讲完了栈实现队列,队列实现栈,接下来就是栈的经典应用了。大家先自己思考一下有哪些不匹配的场景,在看视频我讲的都有哪些场景,落实到代码其实就容易很多了。题目链接/文章讲解/视频讲解:代码随想录1047.删除字符串中的所有相邻重复项栈的经典应用。要知道栈为什么适合做这种类似于爱消除的操作,因为栈帮助我们记录了
万事大吉CC
·
2024-01-24 20:46
代码随想录
java
算法
开发语言
算法训练
营Day55(子序列--编辑距离)
392.判断子序列392.判断子序列-力扣(LeetCode)这道题目算是编辑距离问题的入门题目(毕竟这里只是涉及到减法),慢慢的,后面就要来解决真正的编辑距离问题了和最长公共子序列相似他那道题区别就是else里面,两个都可以删,就是取max(ij-1i-1j)classSolution{publicbooleanisSubsequence(Strings,Stringt){intlen1=s.l
不吃青椒!
·
2024-01-24 20:15
算法
代码随想录
算法训练
营day14|二叉树的遍历
理论基础递归遍历迭代遍历统一迭代理论基础需要了解二叉树的种类,存储方式,遍历方式以及二叉树的定义文章讲解:代码随想录递归遍历(必须掌握)二叉树的三种递归遍历掌握其规律后,其实很简单题目链接/文章讲解/视频讲解:代码随想录迭代遍历(基础不好的录友,迭代法可以放过)题目链接/文章讲解/视频讲解:代码随想录统一迭代(基础不好的录友,迭代法可以放过)这是统一迭代法的写法,如果学有余力,可以掌握一下题目链接
万事大吉CC
·
2024-01-24 20:44
代码随想录
算法
代码随想录
算法训练
营第41天|343. 整数拆分、96.不同的二叉搜索树
文章目录343.整数拆分思路代码96.不同的二叉搜索树思路代码343.整数拆分题目链接:343.整数拆分文章讲解:代码随想录|343.整数拆分视频讲解:整数拆分思路1.dp[i]:整数i拆分成k个数的最大乘积2.dp[i]=max(dp[i],max((i-j)*j,dp[i-j]*j)):从1遍历j,比较(i-j)*j和dp[i-j]*j取最大的(i-j)*j是拆成两个数,dp[i-j]*j是拆
五鲜炒饭
·
2024-01-24 18:52
算法
代码随想录
算法训练
营第十二天|理论基础,递归遍历,迭代遍历,统一迭代
系列文章目录代码随想录
算法训练
营第一天|数组理论基础,704.二分查找,27.移除元素代码随想录
算法训练
营第二天|977.有序数组的平方,209.长度最小的子数组,59.螺旋矩阵II代码随想录
算法训练
营第三天
丁希希哇
·
2024-01-24 15:36
力扣算法刷题
算法
面试
python
力扣
数据结构
代码随想录
算法训练
营第十三天|层序遍历10,226.翻转二叉树,101.对称二叉树
系列文章目录代码随想录
算法训练
营第一天|数组理论基础,704.二分查找,27.移除元素代码随想录
算法训练
营第二天|977.有序数组的平方,209.长度最小的子数组,59.螺旋矩阵II代码随想录
算法训练
营第三天
丁希希哇
·
2024-01-24 15:36
力扣算法刷题
算法
面试
python
力扣
数据结构
代码随想录
算法训练
营第十一天|239. 滑动窗口最大值,347.前 K 个高频元素,总结
系列文章目录代码随想录
算法训练
营第一天|数组理论基础,704.二分查找,27.移除元素代码随想录
算法训练
营第二天|977.有序数组的平方,209.长度最小的子数组,59.螺旋矩阵II代码随想录
算法训练
营第三天
丁希希哇
·
2024-01-24 15:06
力扣算法刷题
算法
面试
力扣
python
数据结构
代码随想录
算法训练
营第28天 | 93.复原IP地址 78.子集 90.子集II
目录93.复原IP地址解题思路回溯三部曲#判断子串是否合法实现代码78.子集解题思路回溯三部曲实现代码90.子集II解题思路实现代码93.复原IP地址题目链接:93.复原IP地址给定一个只包含数字的字符串,复原它并返回所有可能的IP地址格式。有效的IP地址正好由四个整数(每个整数位于0到255之间组成,且不能含有前导0),整数之间用'.'分隔。例如:"0.1.2.201"和"192.168.1.1
一定可以拿到心仪的offer鸭
·
2024-01-24 08:30
算法
tcp/ip
网络协议
【代码随想录
算法训练
营第二十八天|93.复原IP地址、 78.子集、90.子集II】
代码随想录
算法训练
营第二十八天|93.复原IP地址、78.子集、90.子集II93.复原IP地址78.子集90.子集II题解代码参考:http://www.acwing.com93.复原IP地址看代码:
Dom Wotingtun
·
2024-01-24 08:57
算法
深度优先
代码随想录
算法训练
营day27 || 39. 组合总和,40.组合总和II,131.分割回文串
视频讲解:带你学透回溯算法-组合总和(对应「leetcode」力扣题目:39.组合总和)|回溯法精讲!_哔哩哔哩_bilibili回溯算法中的去重,树层去重树枝去重,你弄清楚了没?|LeetCode:40.组合总和II_哔哩哔哩_bilibili带你学透回溯算法-分割回文串(对应力扣题目:131.分割回文串)|回溯法精讲!_哔哩哔哩_bilibili39.组合总和思路:题目中给出这样一句话:“ca
weixin_44316285
·
2024-01-24 03:47
算法
代码随想录
算法训练
营day28 || 93.复原IP地址,78.子集,90.子集II
视频讲解:回溯算法如何分割字符串并判断是合法IP?|LeetCode:93.复原IP地址_哔哩哔哩_bilibili回溯算法解决子集问题,树上节点都是目标集和!|LeetCode:78.子集_哔哩哔哩_bilibili回溯算法解决子集问题,如何去重?|LeetCode:90.子集II_哔哩哔哩_bilibili93.复原IP地址思路:有效IP地址正好由四个整数(每个整数位于0到255之间组成,且不
weixin_44316285
·
2024-01-24 03:14
算法
代码随想录
算法训练
营第五十五天| 392.判断子序列、115.不同的子序列
代码随想录
算法训练
营第五十五天|392.判断子序列、115.不同的子序列题目392.判断子序列给定字符串s和t,判断s是否为t的子序列。
CrozzMoy
·
2024-01-24 03:10
代码随想录
算法
数据结构
算法训练
营第五十六天|583. 两个字符串的删除操作 72. 编辑距离
目录Leetcode583.两个字符串的删除操作Leetcode72.编辑距离Leetcode583.两个字符串的删除操作文章链接:代码随想录题目链接:583.两个字符串的删除操作思路:直接记录需要改(增或删)几个,也就是求不公共的子序列classSolution{public:intminDistance(stringword1,stringword2){vector>dp(word1.size
啊就赵得柱
·
2024-01-24 03:10
算法
代码随想录
算法训练
营第五十五天 | 392.判断子序列,115.不同的子序列
目录392.判断子序列115.不同的子序列392.判断子序列题目链接:392.判断子序列设s的指针,遍历t的各个元素,当t与s对应元素相同时,指针前进:classSolution{public:boolisSubsequence(strings,stringt){if(s.size()==0)returntrue;intindex=0;for(inti=1;i>dp(s.size()+1,vect
Jamie super Cool
·
2024-01-24 03:38
算法
leetcode
动态规划
c++
算法训练
营第五十五天|392.判断子序列 115.不同的子序列
目录Leetcode392.判断子序列Leetcode115.不同的子序列Leetcode392.判断子序列文章链接:代码随想录题目链接:392.判断子序列思路:正常动规记录,重点在于后面采用判断classSolution{public:boolisSubsequence(strings,stringt){vector>dp(s.size()+1,vector(t.size()+1));for(i
啊就赵得柱
·
2024-01-24 03:37
算法
前 K 个高频元素(中等)——代码随想录
算法训练
营Day13
题目链接:347.前K个高频元素题目描述给你一个整数数组nums和一个整数k,请你返回其中出现频率前k高的元素。你可以按任意顺序返回答案。示例1:输入:nums=[1,1,1,2,2,3],k=2输出:[1,2]示例2:输入:nums=[1],k=1输出:[1]提示:1=0&&this.compare(parent,index)>0){//注意compare参数顺序[this.queue[inde
晴雪月乔
·
2024-01-24 02:12
代码随想录算法训练营
#
LeetCode
栈与队列
算法
代码随想录算法训练营
栈与队列
滑动窗口最大值(困难)——代码随想录
算法训练
营Day13
题目链接:239.滑动窗口最大值题目描述给你一个整数数组nums,有一个大小为k的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的k个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值。示例1:输入:nums=[1,3,-1,-3,5,3,6,7],k=3输出:[3,3,5,5,6,7]解释:滑动窗口的位置最大值--------------------[13-1]-353
晴雪月乔
·
2024-01-24 02:42
代码随想录算法训练营
#
LeetCode
栈与队列
算法
代码随想录算法训练营
栈与队列
二叉树的遍历——代码随想录
算法训练
营Day14
144.二叉树的前序遍历94.二叉树的中序遍历145.二叉树的后序遍历一、递归遍历文章讲解:代码随想录视频讲解:每次写递归都要靠直觉?这次带你学透二叉树的递归遍历!|LeetCode:144.前序遍历,145.后序遍历,94.中序遍历_哔哩哔哩_bilibili1.前序遍历遍历顺序:中左右。递归分析:确定递归函数的参数和返回值:参数为当前正在遍历的节点,返回值为void。确定终止条件:当前遍历的节
晴雪月乔
·
2024-01-24 02:12
代码随想录算法训练营
代码随想录算法训练营
代码随想录
算法训练
营29期Day28|LeetCode 93,78,90
文档讲解:复原IP地址子集子集II93.复原IP地址题目链接:https://leetcode.cn/problems/restore-ip-addresses/description/思路:这题其实不用搜索也能做,模拟即可。题目中已经告诉我们,ip地址是由四个0-255之间的数字构成的。因此在给出的字符串中我们只需要枚举出三个隔板,也就是排列组合中的插板法。有三个隔板就能把原字符串分割成四部分,
tlingyuqi
·
2024-01-23 22:45
代码随想录算法训练营29期
算法
leetcode
深度优先
c++
职场和发展
代码随想录
算法训练
营29期Day27|LeetCode 39,40,131
文档讲解:组合总和组合总和II分割回文串39.组合总和题目链接:https://leetcode.cn/problems/combination-sum/description/思路:很简单,因为每个数选取的次数为无限个,因此我们在搜索时有两种选取情况:下一步依旧选取当前这个数或者下一步选取下一个位置的数,递归边界条件为位置走到头的时候或者和超过目标值的时候。当和恰好为目标值,证明找到了一种方案。
tlingyuqi
·
2024-01-23 22:10
代码随想录算法训练营29期
算法
leetcode
职场和发展
c++
算法训练
营Day41(动态规划3)
说明今天两题都挺有难度,建议大家思考一下没思路,直接看题解,第一次做,硬想很难想出来。343.整数拆分力扣(LeetCode)官网-全球极客挚爱的技术成长平台classSolution:#假设对正整数i拆分出的第一个正整数是j(1int:dp=[0]*(n+1)#创建一个长度为n+1的数组,初始化为0dp[0]=1#当n为0时,只有一种情况,即空树,所以dp[0]=1foriinrange(1,n
Best,
·
2024-01-23 22:22
算法
动态规划
算法训练
营Day44(动态规划之完全背包 6)
说明力扣上没有纯粹的完全背包的题目,所以先了解一下完全背包的理论,可以去卡码网第52题(opensnewwindow)去练习完全背包后面的两道题目,都是完全背包的应用,做做感受一下完全背包的理论基础区别对于纯完全背包问题(装满这个背包的最大价值或者问能否装满这个背包),两层for循环可以进行颠倒,且第二层for循环需正序遍历518.零钱兑换II力扣(LeetCode)官网-全球极客挚爱的技术成长平
Best,
·
2024-01-23 17:13
算法
动态规划
算法训练
营Day45(动态规划7)
70.爬楼梯(进阶)卡码网:57.爬楼梯提醒这道题目爬楼梯之前做过,这次再用完全背包的思路来分析一遍322.零钱兑换力扣(LeetCode)官网-全球极客挚爱的技术成长平台提醒如果求组合数就是外层for循环遍历物品,内层for遍历背包如果求排列数就是外层for遍历背包,内层for循环遍历物品本题先遍历物品后遍历背包,还是先遍历背包后遍历物品两种方法都可以classSolution:defcoinC
Best,
·
2024-01-23 17:13
动态规划
算法
算法训练
营Day46(动态规划8之多重背包)
多重背包关于多重背包,力扣上没有相关的题目,所以今天的重点就是回顾一波自己做的背包题目本题力扣上没有原题,大家可以去卡码网第56题(opensnewwindow)去练习简单介绍有N种物品和一个容量为V的背包。第i种物品最多有Mi件可用,每件耗费的空间是Ci,价值是Wi。求解将哪些物品装入背包可使这些物品的耗费的空间总和不超过背包容量,且价值总和最大。多重背包和01背包是非常像的,为什么和01背包像
Best,
·
2024-01-23 17:11
算法
动态规划
试题
算法训练
首字母变大写
问题描述对一个字符串中的所有单词,如果单词的首字母不是大写字母,则把单词的首字母变成大写字母。在字符串中,单词之间通过空白符分隔,空白符包括:空格(’‘)、制表符(’\t’)、回车符(’\r’)、换行符(’\n’)输入格式输入一行:待处理的字符串(长度小于80)输出格式输出一行:转换后的字符串。样例输入ifso,youalreadyhaveagoogleaccount.youcansigninon
我与琳虽缘无分
·
2024-01-23 10:10
AL-蓝桥杯
字符串
java
上一页
14
15
16
17
18
19
20
21
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他