96SEO 2026-02-20 01:14 1
视频讲解带你学透回溯算法-组合总和对应「leetcode」力扣题目39.组合总和|

这是基本的回溯算法求组合问题的代码思路没有什么问题能ac就是说记录第一次不看题解写题思想就是暴力算法的本质剪枝条件的优化套路其实差不多这里就是多了一个先对数组进行升序排序的操作好更加有利于剪枝条件作判断
//使用Arrays工具类对给定的数组先按升序排列好让回溯方法里面的剪枝条件作快速判断backtracking(candidates,target,0);return
//先对数组进行升序排序可以更加对其作判断不加也没事就是说if(sum
LinkedListInteger(path));return;}for(int
candidates[i];backtracking(candidates,target,i);
//这里是i因为避免取到重复的组合path.removeLast();sum
本题主要在于去重条件操作的理解这很重要然后就是整体思路和求组合问题差不多具体的去重操作理解可以分成两种树层去重和树枝去重以本题结合代码注释为例说明如下第一种树层去重used[i
说明此时第一轮递归已经结束了此时整个if语句的判断条件意思是当第二轮开始递归的开头元素和第一轮开始的递归的开头元素相同时直接跳过此轮递归因为之前那一轮已经包括了所有种以1开头的组合第二种树枝去重used[i
说明此时还在第一轮里面此时整个if语句的判断条件意思是当在第一轮搜索所有的组合过程中如果遇到和前一个元素相同时直接跳过相邻元素相同组合的搜索这就意味着不会出现
最后想分享的就是可以多看卡哥视频讲解的思路再自己好好去理解这两种情况
//定义一个和给定数组相同大小、具有标记功能的数组Arrays.fill(used,
//使用used数组标记之前是否使用过元素0表示未使用过1表示使用过backtracking(candidates,
LinkedListInteger(path));return;}for(int
true树枝去重操作//这里可以这么去理解这种判断条件以第一轮和第二轮递归说明给定的排序后的数组为[1
说明此时第一轮递归已经结束了此时整个if语句的判断条件意思是当第二轮开始递归的开头元素和第一轮开始的递归的开头元素相同时直接跳过此轮递归因为之前那一轮已经包括了所有种以1开头的组合//used[i
说明此时还在第一轮里面此时整个if语句的判断条件意思是当在第一轮搜索所有的组合过程中如果遇到和前一个元素相同时直接跳过相邻元素相同组合的搜索这就意味着不会出现
true;path.add(candidates[i]);sum
candidates[i];backtracking(candidates,
//递归之后一定要回溯这是不能忘的把之前使用过的元素重新都标记为0开始下一次的递归搜索path.removeLast();sum
本题还是有难度的需要把切割的动作抽象成组合的问题多看卡哥视频里面讲解的思路捋清之后再下手写执行代码卡哥里面说的思路还是很清楚的多品味品味就好代码具体注意的事项看注释如何把切割动作抽象成组合问题卡哥视频说的很详细移动到卡哥视频就行
LinkedListString(path));return;}for(int
//如果索引的范围内的子串是回文串则直接切割子串及时添加到path路径里面这里使用下标直接进行切割数组的操作不用装到容器里面判断String
//startIndex是固定不变的而i会在每轮递归的时候都会进行i操作主要substring(start,end)是左闭右开的path.add(temp);}else{continue;}backtracking(s,
保证不会重复切割path.removeLast();}}public
作为专业的SEO优化服务提供商,我们致力于通过科学、系统的搜索引擎优化策略,帮助企业在百度、Google等搜索引擎中获得更高的排名和流量。我们的服务涵盖网站结构优化、内容优化、技术SEO和链接建设等多个维度。
| 服务项目 | 基础套餐 | 标准套餐 | 高级定制 |
|---|---|---|---|
| 关键词优化数量 | 10-20个核心词 | 30-50个核心词+长尾词 | 80-150个全方位覆盖 |
| 内容优化 | 基础页面优化 | 全站内容优化+每月5篇原创 | 个性化内容策略+每月15篇原创 |
| 技术SEO | 基本技术检查 | 全面技术优化+移动适配 | 深度技术重构+性能优化 |
| 外链建设 | 每月5-10条 | 每月20-30条高质量外链 | 每月50+条多渠道外链 |
| 数据报告 | 月度基础报告 | 双周详细报告+分析 | 每周深度报告+策略调整 |
| 效果保障 | 3-6个月见效 | 2-4个月见效 | 1-3个月快速见效 |
我们的SEO优化服务遵循科学严谨的流程,确保每一步都基于数据分析和行业最佳实践:
全面检测网站技术问题、内容质量、竞争对手情况,制定个性化优化方案。
基于用户搜索意图和商业目标,制定全面的关键词矩阵和布局策略。
解决网站技术问题,优化网站结构,提升页面速度和移动端体验。
创作高质量原创内容,优化现有页面,建立内容更新机制。
获取高质量外部链接,建立品牌在线影响力,提升网站权威度。
持续监控排名、流量和转化数据,根据效果调整优化策略。
基于我们服务的客户数据统计,平均优化效果如下:
我们坚信,真正的SEO优化不仅仅是追求排名,而是通过提供优质内容、优化用户体验、建立网站权威,最终实现可持续的业务增长。我们的目标是与客户建立长期合作关系,共同成长。
Demand feedback