回溯专题 记录

回溯的题目按照这套模板进行;

我感觉整体逻辑还是递归,只不过有了pop_back才是回溯概念;

cpp 复制代码
class Solution
{
    public:
        vector<int> path;
        vector<vector<int>> ans;
        void backtracking(int n,int k,int startindex)
          {
                if(path.size()==k)
                    {
                        ans.push_back(path);
                        return;
                    }
                for(int i=startindex;i<=n;++i)
                {
                    path.push_back(i);
                    backtracking(n,k,i+1);
                    path.pop_back();
                }
            }
        vector<vector<int>> combine(int n, int k) {
            backtracking(n,k,1);
            return ans;
    }
};

216. 组合总和 III (按照模板来,不过c++没有直接计算容器sum的函数)写一个;

17. 电话号码的字母组合

这道题,逻辑没有变,但是需要注意的是,只有当index达到了digits.size()的时候才能终止,也就是说会递归到底,然后完全加入以第一个数字第一个字符为首的字符串后再开始以第一个数字第二个字符为首的字符串。 当输入的index+1的长度等于digits的时候说明string的长度在这个for循环中也等于此,也就是说找到了一组;

相关推荐
AI科技星5 小时前
v=c 物理理论核心参数转换表达式大全
开发语言·线性代数·算法·数学建模·平面
_日拱一卒6 小时前
LeetCode:240搜索二维矩阵Ⅱ
数据结构·线性代数·leetcode·矩阵
WolfGang0073216 小时前
代码随想录算法训练营 Day33 | 动态规划 part06
算法·leetcode·动态规划
aini_lovee6 小时前
半定规划(SDP)求解的 MATLAB 实现
算法
米粒16 小时前
力扣算法刷题 Day 41(买卖股票)
算法·leetcode·职场和发展
幻风_huanfeng6 小时前
人工智能之数学基础:内点法和外点法的区别和缺点
人工智能·算法·机器学习·内点法·外点法
MIngYaaa5206 小时前
The 6th Liaoning Provincial Collegiate Programming Contest - External 复盘
算法
CylMK6 小时前
题解:P11625 [迷宫寻路 Round 3] 迷宫寻路大赛
c++·数学·算法
计算机安禾6 小时前
【数据结构与算法】第44篇:堆(Heap)的实现
c语言·开发语言·数据结构·c++·算法·排序算法·图论
kaikaile19957 小时前
能量算子的MATLAB实现与详细算法
人工智能·算法·matlab