77.组合

77.组合

思路

无,按照代码随想录给出的模板,需要出现一个终止条件,以及for循环。终止条件负责收集结果及返回。for循环控制横向,循环内进行递归控制纵向

代码

    List<List<Integer>> result=new ArrayList<>();
    LinkedList<Integer> path=new LinkedList<>();
    public List<List<Integer>> combine(int n, int k) {
        backtracking(n,k,1);
        return result;
    }
    public void backtracking(int n,int k,int startIndex){
        if (path.size()==k){
            result.add(new ArrayList<>(path));
            return;
        }
        for (int i=startIndex;i<=n;i++){ //控制横向遍历
            path.add(i);    //处理节点
            backtracking(n,k,i+1);//递归控制纵向遍历,下一层控制startIndex+1
            path.removeLast();  //撤销操作
        }
    }

相关推荐

  1. 77. 组合

    2024-03-13 23:46:04       55 阅读
  2. 77.组合

    2024-03-13 23:46:04       35 阅读
  3. 77. 组合(回溯)

    2024-03-13 23:46:04       54 阅读
  4. 【算法题】77. 组合

    2024-03-13 23:46:04       51 阅读
  5. 力扣:77. 组合

    2024-03-13 23:46:04       54 阅读
  6. 力扣77-组合

    2024-03-13 23:46:04       45 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-13 23:46:04       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-13 23:46:04       106 阅读
  3. 在Django里面运行非项目文件

    2024-03-13 23:46:04       87 阅读
  4. Python语言-面向对象

    2024-03-13 23:46:04       96 阅读

热门阅读

  1. 安卓kotlin面试题 81-90

    2024-03-13 23:46:04       37 阅读
  2. 【C语言学习路线】

    2024-03-13 23:46:04       43 阅读
  3. TypeScript之函数

    2024-03-13 23:46:04       39 阅读
  4. jetson orin nx重装Cuda加速的OpenCV4.5.4

    2024-03-13 23:46:04       45 阅读
  5. nodejs:npm i与npm i -S、npm i -D区别

    2024-03-13 23:46:04       39 阅读
  6. 知识图谱详细建立过程

    2024-03-13 23:46:04       40 阅读
  7. 320: 鸡兔同笼(python)

    2024-03-13 23:46:04       39 阅读
  8. HTML世界之标签Ⅱ

    2024-03-13 23:46:04       38 阅读