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

开始回溯的学习

77. 组合 - 力扣(LeetCode)

class Solution {
public:vector<vector<int>> combine(int n, int k) {vector<vector<int>> ans;vector<int> path;dfs(n,k,ans,path,1);return ans;}
private:void dfs(int n, int k, vector<vector<int>> & ans, vector<int> &path, int index){if(path.size() == k){ans.push_back(path);return;}for(int i = index; i <= n; i++){path.push_back(i);dfs(n,k,ans,path,i+1);path.pop_back();}}
};

216. 组合总和 III - 力扣(LeetCode)

class Solution {
public:vector<vector<int>> combinationSum3(int k, int n) {vector<vector<int>> ans;vector<int>  path; dfs(k, n, ans, path,1);return ans;}private:void dfs(int k, int n, vector<vector<int>>& ans, vector<int>& path, int index){if(path.size() == k && n == 0){ans.push_back(path);return;}for(int i = index; i < 10; i++){path.push_back(i);dfs(k, n -i, ans,path,i+1);path.pop_back();}}
};

17. 电话号码的字母组合 - 力扣(LeetCode)

class Solution {
public:
unordered_map<char,string> ump = {{'2',"abc"}, {'3',"def"}, {'4', "ghi"}, {'5', "jkl"}, {'6', "mno"},{'7', "pqrs"}, {'8',"tuv"},{'9',"wxyz"}}; void dfs(string &digits, vector<string>& ans, string path, int index){if(path.size() == digits.size()){ans.push_back(path);return;}for(char c : ump[digits[index]]){path += c;dfs(digits,ans,path,index+1);path.pop_back();} }public:vector<string> letterCombinations(string digits) {if(digits == "") return {};vector<string>ans;dfs(digits, ans,"",0);return ans; }
};

http://www.xdnf.cn/news/1301815.html

相关文章:

  • I/O多路复用特性与实现
  • 【学习嵌入式day-25-线程】
  • 扣子(Coze),开源了!Dify 天塌了
  • 无人机智能跟踪模块设计与运行分析
  • Mac Mysql 卸载
  • 【Docker】openEuler 使用docker-compose部署gitlab-ce
  • C++设计模式:类间关系
  • 企业级时序数据库选型指南:从传统架构向智能时序数据管理的转型之路
  • Flinksql bug: Heartbeat of TaskManager with id container_XXX timed out.
  • gitee_流水线搭配 Dockerfile 部署vue项目
  • MetaFox官方版:轻松转换视频,畅享MKV格式的便捷与高效
  • 【Linux基础知识系列】第九十六篇 - 使用history命令管理命令历史
  • std::set_symmetric_difference
  • 4. 图像识别模型与训练策略
  • 解锁AI大模型:Prompt工程全面解析
  • Spring MVC ModelAndView 详解
  • Linux网络基础(一)
  • 【计算机视觉与深度学习实战】01基于直方图优化的图像去雾技术
  • Python入门第3课:Python中的条件判断与循环语句
  • 电商架构测试体系:ZKmall开源商城筑牢高并发场景下的系统防线
  • Dijkstra与Floyd求最短路算法简介
  • 【JAVA高级】实现word转pdf 实现,源码概述。深坑总结
  • Vue3 学习教程,从入门到精通,Axios 在 Vue 3 中的使用指南(37)
  • 在Ubuntu 22.04上安装远程桌面服务
  • 关于C++的#include的超超超详细讲解
  • 为什么 /deep/ 现在不推荐使用?
  • 稳定且高效:GSPO如何革新大型语言模型的强化学习训练?
  • Webpack详解
  • 思考:高速场景的行星轮混动效率如何理解
  • 解决Electron透明窗口点击不影响其他应用