2.21力扣-回溯组合

77. 组合 - 力扣(LeetCode)

一:JAVA

java 复制代码
class Solution {
    List<Integer> list =new LinkedList<>();
    List<List<Integer>> ans =new LinkedList<>();

    public List<List<Integer>> combine(int n, int k) {
        df(n, k, 1);
        return ans;
    }

    public void df(int n, int k,int start){
        if(list.size()==k){
            ans.addLast(new LinkedList<>(list));
        }

        for (int i = start; i<=n; i++) {
            list.addLast(i);
            df(n, k, i+1);
            list.removeLast();
        }
    }
    
}

Q:这段代码中不能直接将 ans.addLast(new LinkedList<>(list)); 替换为 ans.addLast(list);,原因涉及到 Java 中的对象引用行为。

相关推荐
eachin_z40 分钟前
力扣刷题(第四十九天)
算法·leetcode·职场和发展
闻缺陷则喜何志丹1 小时前
【强连通分量 缩点 拓扑排序】P3387 【模板】缩点|普及+
c++·算法·拓扑排序·洛谷·强连通分量·缩点
机器学习之心1 小时前
机器学习用于算法交易(Matlab实现)
算法·机器学习·matlab
AL流云。1 小时前
【优选算法】C++滑动窗口
数据结构·c++·算法
qq_429879672 小时前
省略号和可变参数模板
开发语言·c++·算法
飞川撸码3 小时前
【LeetCode 热题100】网格路径类 DP 系列题:不同路径 & 最小路径和(力扣62 / 64 )(Go语言版)
算法·leetcode·golang·动态规划
Neil今天也要学习4 小时前
永磁同步电机参数辨识算法--IPMSM拓展卡尔曼滤波全参数辨识
单片机·嵌入式硬件·算法
yzx9910134 小时前
基于 Q-Learning 算法和 CNN 的强化学习实现方案
人工智能·算法·cnn
亮亮爱刷题5 小时前
算法练习-回溯
算法
眼镜哥(with glasses)5 小时前
蓝桥杯 国赛2024python(b组)题目(1-3)
数据结构·算法·蓝桥杯