当前位置: 首页 > news >正文

代码随想录打卡 第二十一天

39 组合总和

class Solution { public: void backtracking(int& sum,int target,vector<int> candidates,vector<vector<int>>& result,vector<int>& path,int index){ if(sum > target) return; if(sum == target){ result.push_back(path); return; } for(int i = index;i < candidates.size();i++){ path.push_back(candidates[i]); sum += candidates[i]; backtracking(sum,target,candidates,result,path,index); path.pop_back(); sum -= candidates[i]; index++; } } vector<vector<int>> combinationSum(vector<int>& candidates, int target) { vector<vector<int>> result; vector<int> path; int sum = 0; int index = 0; backtracking(sum,target,candidates,result,path,index); return result; } };

40 组合总和 II

class Solution { public: void backtracking(int& sum,int target,vector<int> candidates,vector<vector<int>>& result,vector<int>& path,int index,vector<int>& used){ if(sum > target) return; if(sum == target){ result.push_back(path); return; } for(int i = index;i < candidates.size();i++){ if(i > 0 && candidates[i] == candidates[i-1] && used[i-1] == 0) continue; path.push_back(candidates[i]); sum += candidates[i]; used[i] = 1; backtracking(sum,target,candidates,result,path,i + 1,used); path.pop_back(); sum -= candidates[i]; used[i] = 0; } } vector<vector<int>> combinationSum2(vector<int>& candidates, int target) { sort(candidates.begin(), candidates.end()); vector<int> used(candidates.size(), 0); vector<vector<int>> result; vector<int> path; int sum = 0; backtracking(sum,target,candidates,result,path,0,used); return result; } };

131 分割回文串

class Solution { public: bool check(string s,int left,int right){ while(left<right){ if(s[left] != s[right]) return false; left++; right--; } return true; } void backtracking(int index,string s,vector<vector<string>>& result,vector<string> path){ if(index >= s.size()){ result.push_back(path); return; } for(int i = index;i < s.size();i++){ if(check(s,index,i)){ string sub = s.substr(index, i - index + 1); path.push_back(sub); }else continue; backtracking(i+1,s,result,path); path.pop_back(); } } vector<vector<string>> partition(string s) { vector<string> path; vector<vector<string>> result; backtracking(0,s,result,path); return result; } };
http://www.jsqmd.com/news/786513/

相关文章:

  • RWKV Runner:一站式桌面应用,轻松部署与集成开源大语言模型
  • 企业官网搭建的坑,我替你踩过了:别等网站打不开才后悔
  • 智慧树自动学习神器:如何用Autovisor轻松解放你的双手
  • AI代码审计工具Vulnhuntr实战:LLM如何挖掘复杂逻辑漏洞
  • vcs后仿(+sdf)踩坑记录 外围协议接口 双端握手异步
  • three粒子飘动效果
  • CANN/cannbot-skills:KVCache Offload 异步搬运流案例
  • 电源管理设计:能效优化与同步整流技术实践
  • 使用 Taotoken 聚合多模型 API 为创业项目构建智能客服原型
  • 解锁以太坊交易效率:PBS 与棘刺雕猴的深度实践
  • 深度定制Linux内核:为特定硬件优化CPU调度与电源管理
  • IncreRTL框架:基于LLM的精准增量RTL代码生成技术
  • 大模型智能体框架big-brain:从原理到生产部署的工程实践
  • 构建AI增强的网状思维工作流:从MCP协议到多智能体协同的实践
  • AI编程助手防忽悠指南:用文件契约与自动化验证提升协作效率
  • 大路灯什么品牌好用又亮?揭秘护眼大路灯综合榜十强,优质健康光
  • 力反馈差分量化技术:提升机器人布料操作稳定性
  • 多模态AI如何重塑教育:从理论到实践的课堂革命
  • 3个步骤搞定SD-WebUI-Inpaint-Anything自定义修复模型:告别“找不到模型“的烦恼
  • PostGIS实现多波段栅格数据转单波段灰度图【ST_Grayscale】
  • 初次使用 Taotoken 模型广场进行选型与试用的感受
  • 拿PMP证书到底值不值?从薪资影响看清晖这类机构的价值
  • 大模型应用可观测性实战:从黑盒调试到成本优化
  • 内容创作团队如何通过Taotoken调度不同模型完成多样化文案生成
  • 边缘LLM自适应混合精度量化技术APreQEL解析
  • Python 爬虫高级实战:Playwright 动态渲染爬虫开发
  • 物联网 MQTT 安全:风险分析与实战防御策略深度解析
  • AI Agent成本优化实战:智能模型路由与上下文压缩技术解析
  • localtime和gmtime获取的时间不可靠
  • 从简单夹爪到灵巧手的运动映射:原理、实现与机器人抓取技能迁移